PAT1078 字串壓縮與解壓 (20 分)

2021-08-28 05:32:22 字數 518 閱讀 6939

題目:

思路:分成兩類,解壓和被解壓。解壓的時候字串中只有字母和空格,只要設定乙個加法器數一數相鄰相同的就好了。被解壓時字串中有字母、空格、數字。特殊點在於數字,設定乙個加法器,將該數字從string轉化成int就好了,如果該加法器數字不變依然為零的話就設定為一。再來一重迴圈輸出數字後面的字母或空格就好了。

#include #include using namespace std;

void conde()

if(cn > 1)

cout<= '0' && s[i] <= '9')

if (cn == 0)

cn = 1;

while(cn--)

cout<>p;

cin.ignore();

if(p == 'c')

conde();

else if(p == 'd')

decom();

cout<20分一般,理清思路就好了   

2023年9月18日 14:11:51      

PAT 1078 字串壓縮與解壓 20 分

文字壓縮有很多種方法,這裡我們只考慮最簡單的一種 把由相同字元組成的乙個連續的片段用這個字元和片段中含有這個字元的個數來表示。例如 ccccc 就用 5c 來表示。如果字元沒有重複,就原樣輸出。例如 aba 壓縮後仍然是 aba。解壓方法就是反過來,把形如 5c 這樣的表示恢復為 ccccc。本題需...

PAT 1078 字串壓縮與解壓 20分

1078 字串壓縮與解壓 20分 文字壓縮有很多種方法,這裡我們只考慮最簡單的一種 把由相同字元組成的乙個連續的片段用這個字元和片段中含有這個字元的個數來表示。例如 ccccc 就用 5c 來表示。如果字元沒有重複,就原樣輸出。例如 aba 壓縮後仍然是 aba。解壓方法就是反過來,把形如 5c 這...

PAT 乙級 1078 字串壓縮與解壓

文字壓縮有很多種方法,這裡我們只考慮最簡單的一種 把由相同字元組成的乙個連續的片段用這個字元和片段中含有這個字元的個數來表示。例如ccccc就用5c來表示。如果字元沒有重複,就原樣輸出。例如aba壓縮後仍然是aba。解壓方法就是反過來,把形如5c這樣的表示恢復為ccccc。本題需要你根據壓縮或解壓的...