问题遇到的现象和发生背景
1092:练6.8 求亲和数
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 293 通过数: 201
【题目描述】
自然数a的因子是指能被a整除的所有自然数,但不含a本身。例如12的因子为:1和2或3或4和6。若自然数a的因子之和为b,而且b的因子之和又等于a,则称a,b为一对“亲和数” 。求最小的一对亲和数(a<>b)。
【输入】
(无)
【输出】
1行,分别为a和b(a < b)。
1092:练6.8 求亲和数
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 293 通过数: 201
【题目描述】
自然数a的因子是指能被a整除的所有自然数,但不含a本身。例如12的因子为:1和2或3或4和6。若自然数a的因子之和为b,而且b的因子之和又等于a,则称a,b为一对“亲和数” 。求最小的一对亲和数(a<>b)。
【输入】
(无)
【输出】
1行,分别为a和b(a < b)。
def factor(x):
s = 0
for i in range(1, x // 2 + 1):
if x % i == 0:
s = s + i
return s
if __name__ == '__main__':
a = 2
while (a):
b = factor(a)
if factor(b) == a and a < b:
print(a, b)
break
else:
a = a + 1