解题思路:
暴力迭代到一半就可以了、全暴力迭代完会超时。可能会有小伙伴会觉得迭代一般难道后面的数不需要加上吗,事实确实是不用加上后面的,因为仔细发现最大因子小于等于n/2,大于n一半的另一个整数因子是不存在的。
参考代码:
n = int(input()) ans = 0 for i in range(1,n//2+1): if n%i == 0: ans += i print("yes") if ans == n else print("no")
0.0分
1 人评分
A+B for Input-Output Practice (IV) (C语言代码)浏览:517 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:436 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:604 |
WU-输出九九乘法表 (C++代码)浏览:1671 |
用筛法求之N内的素数。 (C++代码)浏览:693 |
1017题解浏览:605 |
数组与指针的问题浏览:718 |
链表数据求和操作 (C语言代码)浏览:952 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:673 |
数列问题 (C语言代码)浏览:1022 |