经验总结:
写的又臭又长。。。只为记录一个过程。
C++代码:
#include<bits/stdc++.h>
using namespace std;
int main() {
char c = getchar();
getchar();
string s;
getline(cin,s);
if(c == 'C') {
c = s[0];
int count = 1;
for(decltype(s.size()) i=1; i<s.size(); i++) {
if(s[i] == c) {
count++;
} else {
if(count != 1) {
cout<<count;
}
cout<<c;
c = s[i];
count = 1;
}
}
if(count != 1) { //字符串循环完还会有最后一个字符还没输出
cout<<count;
}
cout<<c;
} else if(c == 'D') {
int num = 0;
for(decltype(s.size()) i = 0; i<s.size(); i++) {
if(s[i]>='0'&&s[i]<='9') {
num = num*10 + s[i]-'0';
} else {
if(num == 0) {
cout<<s[i];
} else {
for(int j=0; j<num; j++) {
cout<<s[i];
}
num = 0;
}
}
}
}
return 0;
}