python完全数计算,分两步,一个函数求约数和,其他的做判断

iNOC产品部--完全数计算

http://www.nowcoder.com/questionTerminal/7299c12e6abb437c87ad3e712383ff84

encoding:utf-8

def com(n): #求约数的函数

sum = 0
for i in range(1,n/2+1):
    if n%i == 0:
        # print i
        sum = sum+i
    # i = i+1
return sum

if name == 'main':
while True:
try:
s = input()
if s>0 and s<=500000:
i = 1
count = 0
while i<=s:

                sum = com(i)
                # print 'sum,i',sum,i
                if sum == i:
                    count = count +1
                    # print 'sum==i'
                i= i+1
            print count
        else:
            print '-1'
    except:
        break
全部评论

相关推荐

码客明:我教你个方法,你和你室友沟通一下告知他这个事情。然后就说导员问我就说,室友已经和导员提前沟通了。最后被查到你就说室友和我说了他已经和你沟通好了我没想到他是骗我的呀!把责任都甩给你室友,当然你出去实习的室友也肯定愿意承担这个责任。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务