1112: 对于数字的强迫症
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 473 Solved: 293
[Submit][Status][Web Board]
Description
有一串数字,它虽然长,但他还是一串数字。我有强迫症,我讨厌看到有同样的数字在一起,我想在中间加一个比它们大一点的数。比如123411,我希望它变成1234121。比如333,我希望它变成34343。你能帮我处理一下这些数字吗。
Input
每行输入一串数,对于这些数进行处理,这串数,最多有1000位。
Output
输出你处理后的数,当输入的数为0时结束。
Sample Input
111 991 10001 0
Sample Output
12121 91091 1010101
#include<bits/stdc++.h>
using namespace std;
char s1[1005];
int main()
{
while(cin>>s1&&s1[0]!='0')
{
int l=strlen(s1);
for(int i=0;i<l-1;i++)
{
cout<<s1[i];
if(s1[i]==s1[i+1]){
if(s1[i]=='9')cout<<"10"; /注意对9的讨论
else printf("%c",s1[i]+1);
}
}cout<<s1[l-1]<<endl;
}
return 0;
}