。/。

iNOC产品部--完全数计算

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

看着这么简单一道题那些答案里的花里胡哨还是贴了上来。。。

public class TotalNum {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()){
int a = sc.nextInt();
int count = 0;
for (int i = 2; i <= a; i++) {
if (aaa(i)){
count++;
}
}
System.out.println(count);

}


}
public static boolean aaa(int num){
int sum = 0;
for (int i = 2; i < num; i++) {
if (num % i == 0){
sum += i;

}
}
if (sum + 1 == num){
return true;
}
return false;



}


}
全部评论
历遍算法是方便,但确定这样想都不想的历遍时间上来得及?500000附近的极限速度测试好像超过1s了,个人建议在完全数判断时先开方对称做,如果累计时超出了就直接返回false,这样可以快速抛弃掉绝大多数非完全数
3 回复 分享
发布于 2021-09-03 16:04
算法是有优劣的,遍历是效率比较低下的那种。。。。
1 回复 分享
发布于 2022-09-17 01:31 广东
排版灾难。
点赞 回复 分享
发布于 2021-12-07 22:47
点赞 回复 分享
发布于 2021-08-30 23:40

相关推荐

兄弟们,实习都是在接各种api,该怎么包装简历
仁者伍敌:感觉我自己做小项目也是各种api啊,我要怎么包装简历
点赞 评论 收藏
分享
积极的小学生不要香菜:你才沟通多少,没500不要说难
点赞 评论 收藏
分享
湫湫湫不会java:1.在校经历全删了2.。这些荣誉其实也没啥用只能说,要的是好的开发者不是好好学生3.项目五六点就行了,一个亮点一俩行,xxx技术解决,xxx问题带来xxx提升。第一页学历不行,然后啥有价值的信息也没有,到第二页看到项目了,第一个项目九点,第二个项目像凑数的俩点。总体给人又臭又长,一起加油吧兄弟
点赞 评论 收藏
分享
评论
15
2
分享

创作者周榜

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