题目链接:1078 字符串压缩与解压
#include <iostream>
using namespace std;
int main(){
int count,i;
char c;
string s;
cin >> c;
getchar();
getline(cin, s);
if(c == 'C'){
i = 1;
while(i<s.length()){
count = 1;
while(s[i-1] == s[i] && i<s.length()){
count++;
i++;
}
if(count>1) cout<< count;
cout << s[i-1];
if(i == s.length() - 1 && s[i] != s[i-1]) cout << s[i];
i++;
}
}
if(c == 'D'){
i = 0;
while(i<s.length()){
count = 0;
while(s[i] >= '0' && s[i] <= '9'){
count = count * 10 + (s[i] - '0');
i++;
}
if(!count) count = 1;
for(int j=0;j<count;j++){
cout << s[i];
}
i++;
}
}
cout << endl;
return 0;
}