1078.文字列圧縮と解凍(20)
805 ワード
#include
#include
using namespace std;
string a;
void deal1(){
getline(cin, a);
for(int i = 0; i < a.length(); i++)
{
int count = 0;
while(a[i] == a[i+1])
i++, count++;
if(count != 0)
cout << count+1;
cout << a[i];
}
}
void deal2(){
getline(cin, a);
for(int i = 0; i < a.length(); i++)
{
int sum = 0;
while(a[i] <= '9' && a[i] >= '0')
sum = sum*10 + a[i++]-'0';// ( )
for(int j = 0; j < sum; j++)
cout << a[i];
if(sum == 0)
cout << a[i];
}
}
int main(){
char ch;
cin >> ch;
getchar();//
if(ch == 'C')
deal1();
else if(ch == 'D')
deal2();
cout << endl;
return 0;
}