B1043 輸出PATest (20 分)(雜湊)

2021-09-30 19:01:16 字數 734 閱讀 1189

給定乙個長度不超過 10​^4​​ 的、僅由英文本母構成的字串。請將字元重新調整順序,按patestpatest....這樣的順序輸出,並忽略其它字元。當然,六種字元的個數不一定是一樣多的,若某種字元已經輸出完,則餘下的字元仍按 patest 的順序列印,直到所有字元都被輸出。

輸入在一行中給出乙個長度不超過 10​^4​​ 的、僅由英文本母構成的非空字串。

在一行中按題目要求輸出排序後的字串。題目保證輸出非空。

patestpatestptetptepepee
開乙個陣列 hashtable[6] 用來記錄patest這六個字元出現的個數,再讀入字串時,可以直接統計這個陣列

為了不重複判斷 str[i] 是否是patest中乙個,開乙個char 型陣列 dict,來存放這6個字元,這樣在遍歷陣列dict 時,可以直接對應到hashtable 的下標。

讀入字串時,用sum來記錄這六個字元的個數,由此來判斷何時停止輸出

#include #include const int maxn = 10010;

char str[maxn], dict[6] = ;

int hashtable[6] = ;

int main()

}} while(sum > 0)

}} return 0;

}

B1043 輸出PATest 20分 C語言

原題鏈結 可以把patest裝到乙個陣列裡,和hashtable陣列的下標對應,減少輸入 輸出時的步驟。我的 有太多不必要的重複。題目描述 給定乙個長度不超過 10 4 的 僅由英文本母構成的字串。請將字元重新調整順序,按 patestpatest 這樣的順序輸出,並忽略其它字元。當然,六種字元的個...

B1043 輸出PATest 雜湊

給定乙個長度不超過 10 4 的 僅由英文本母構成的字串。請將字元重新調整順序,按 patestpatest 這樣的順序輸出,並忽略其它字元。當然,六種字元的個數不一定是一樣多的,若某種字元已經輸出完,則餘下的字元仍按 patest 的順序列印,直到所有字元都被輸出。輸入格式 輸入在一行中給出乙個長...

PAT乙級 1043 輸出PATest 20

題目 給定乙個長度不超過10000的 僅由英文本母構成的字串。請將字元重新調整順序,按 patestpatest 這樣的順序輸出,並忽略其它字元。當然,六種字元的個數不一定是一樣多的,若某種字元已經輸出完,則餘下的字元仍按patest的順序列印,直到所有字元都被輸出。輸入格式 輸入在一行中給出乙個長...