zcmu--1112: 对于数字的强迫症(水题)

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;
}

猜你喜欢

转载自blog.csdn.net/qq_38735931/article/details/81487891