1. 程式人生 > >PAT乙1084 關於string 再做一遍

PAT乙1084 關於string 再做一遍

  • 不管用哪種方法不能漏掉首尾
  • string可以 a+=b (string a; char b)
  • 此題保證ct<10;即相鄰重複數字不超過10個,就可以簡單轉化為char,而不像12=>”12”
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
    string a;
    int n;
    cin>>a>>n;
    while(--n)
    {
        string b;
        int l=a.length();
        char
t=a[0]; int ct=0; for(int i=0;i<l;i++) { if(a[i]==t)ct++; else { b+=t; b+=ct+'0'; t=a[i];ct=1; } } if(ct>0) { b+=t; b+=ct+'0'; } a=b; } cout
<<a<<endl; return 0; }