找重复数

输入一个任意数字,要求得到一个比该数字大且最小的非重复数。 重复数的定义是,相邻两位一样。比如1223, 1988 都算重复数。

#!/usr/bin/python

baseNumber = int(raw_input('Please input a number: '))
newNumber = baseNumber
while True:
        newNumber = newNumber+1
        strNewNumber = str(newNumber)
        print "---> %s" % strNewNumber
        okFlag = False
        for i in xrange(len(strNewNumber)):
                if i == len(strNewNumber)-1:
                        okFlag=True
                        break
                if strNewNumber[i] == strNewNumber[i+1]:
                        break
        if okFlag:
                print "OK========> %s" % strNewNumber
                break

思路,number 转化成str。 for 循环比较str的每一位

 

 

[damuser@limingwei myCode]$ ./duplicate_number.py 
Please input a number: 1227
---> 1228
---> 1229
---> 1230
OK========> 1230

 

posted on 2015-05-13 10:46  kramer  阅读(152)  评论(0编辑  收藏  举报

导航