PAT甲级1140题(序列定义)


1.题目介绍

1140

digits:位数

2.考察点,难度

字符串处理类,int转string,难度易

3.解题代码

#include <iostream>
#include <string>
using namespace std;

int main(){

    int D,N;
    scanf("%d %d",&D,&N);
    if(N==1){
        cout<<D<<endl;
        return 0;
    }

    string s=to_string(D);
    s=s + "1";
    for(int k=1;k<N-1;k++){
        string t="";
        int num=s[0]-'0', count=0;
        for(int i=0;i<s.length();i++){
            if(num==(s[i] - '0')) count++;
            else{
                t.append(to_string(num)+to_string(count));
                num=s[i]-'0';
                count=1;
            }
        }
        t.append(to_string(s[s.length()-1]-'0')+to_string(count));
        s=t;
    }
    cout<<s<<endl;
    return 0;
}

4.原题地址

https://pintia.cn/problem-sets/994805342720868352/problems/994805344490864640


文章作者: Peyton
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Peyton !
  目录