#include <stdio.h>
void addto(int k, int nums[]){
int i;
int flag = 1;
for(i = k; i >= 0; i--){
if(flag){
flag = 0;
nums[i] = 0;
}else{
flag = 1;
nums[i] = 1;
}
}
}
int main(){
int nums[18] = {0};
long n=32299547;
int i = 0, j = 0, k = 0;
scanf("%d",&n);
while(n){
nums[i++] = n % 10;
n /=10;
}
j = i - 1 ;
for(i = j; i > 0; i--){
if(nums[i] == nums[i - 1]){
if(nums[i] < 9){
nums[i - 1] +=1;
addto(i - 2, nums);
break;
}else{
nums[i + 1] += 1;
if(nums[i + 1] == nums[i + 2]){
nums[i] = nums[i - 1] = 0;
// printf("ok/n");
i +=3;
if(i > j)j++;
}
else{
addto(i, nums);
break;
}
}
}
}
for(i = j; i >= 0; i--)
printf("%d",nums[i]);
printf("/n");
}
个人email: liych.jack@gmail.com 欢迎交流。