题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4608
参考思路:用字符串sx来存放整数x,sx的长度为length(构造出来的y最后存放在修改后的sx里面):
(1)length为1,直接令sx等于10;
(2)length大于1:
(21)如果通过修改第len-1位可以得到y,则直接修改得到y;
(22)从len-2往前扫描,假设扫描到了k,如果sx[k]为‘9’,令sx[k]为‘0’,继续扫描;如果k等于-1了,即sx从0到len-2位都为‘9’,则y的值为1....9,省略号代表len-1个0;否则修改sx[k] = sx[k] + 1,修改sx[len-1]的值,返回。
源代码: