python 每隔10个数计算2次(个位为5、6的数)

自守数

http://www.nowcoder.com/questionTerminal/88ddd31618f04514ae3a689e83f3ab8e

while True:
    try:
        n = int(input())
        if n == 0:
            print(1)
        elif n == 1:
            print(2)
        else:#n >= 2
            res = 2
            i = 5#除了0,1,只有个位数是 5 或 6 才有可能是自守数
            while i <= n:
                if str(i**2).endswith(str(i)):
                    res += 1
                if i+1<= n and str((i+1)**2).endswith(str(i+1)):
                    res += 1
                i += 10
            print(res)
    except:
        break
全部评论

相关推荐

不愿透露姓名的神秘牛友
11-21 19:05
面试官_我太想进步了:混学生会的,难怪简历这么水
点赞 评论 收藏
分享
object3:开始给部分🌸孝子上人生第一课了
点赞 评论 收藏
分享
三年之期已到我的offer快到碗里来:9硕都比不上9本
点赞 评论 收藏
分享
3 2 评论
分享
牛客网
牛客企业服务