1.题目介绍
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