x = int(input().rstrip())
n = 0
for i in range(1,x+1):
list1 = []
#把一个数的公约数和它本身保存到列表
for i1 in range(1,i+1):
if i%i1==0:
list1.append(i1)
tmp = 0
#遍历加和列表,不包括最后一个字符;
for y in list1[:-1]:
tmp+=y
如果最后一个字符正好等于公约数家和,计数加1
if tmp == i and i!=1:
n+=1
print(n)

京公网安备 11010502036488号