Prob_Solve 板


LINE

[题目] 对一个正整数 N 而言,将它除了本身以外所有的因数加起来的总和为 S, 如果 S>N,则 N 为盈数,如果 S<N,则 N 为亏数, 而如果 S=N,则 N 为完全数(Perfect Number)。 [solve] 一般人可能会这麽做: for(sum=1, i=2; i!=N; ++i) if(N%i==0) sum+=i; 但我觉得效率很差,於是想了一下。 假设,N % i ==0 ,那一定可以表达成 i*j=N, 得到 j=N/i, 这样下来,只要判断到 sqrt(N) 即可,唯一要小心的是, 若 i*i = N 时,就不用再求 j , 基於此思考程式码大致如下 int x, i, end, sum; while(scanf("%d", &x)!=EOF){ if(x==1) { puts("亏数"); continue; } sum=1, end = (int)ceil(sqrt(x)); for(i=2; i!=end; ++i) if(x%i==0) sum+=i, sum+=(x/i); // if(x%end==0) sum+=end; if(end*end==x) sum+=end; if(sum>x) puts("盈数"); else if(sum==x) puts("完全数"); else puts("亏数"); } 但拿这个去 run, 不是正确的, 想请教一下,是我的逻辑有问题, 还是我的码有问题? 谢谢各位。 -- YouLoveMe() ? LetItBe() : LetMeFree(); --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 180.177.73.222 tropical72:转录至看板 C_and_CPP 07/11 22:45
1F:→ tkcn:没仔细看,不过 x==1 的处理是错的 07/11 22:53
2F:→ firejox:是因为1不是质数吗? 07/11 22:56
3F:→ tkcn:"将它除了本身以外所有的因数" 07/11 22:58
4F:→ tropical72:我再改过我修过的部份, 目前仍有误 XD 07/11 22:59
※ 编辑: tropical72 来自: 180.177.73.222 (07/11 22:59)
5F:→ firejox:x*x==end .... 07/11 23:02
6F:→ tropical72:对不起楼上, 是我 key 错 XD 07/11 23:03
※ 编辑: tropical72 来自: 180.177.73.222 (07/11 23:03) ※ 编辑: tropical72 来自: 180.177.73.222 (07/11 23:07)
7F:→ tkcn:x 减掉 EPS 再做 sqrt 试试? (int)ceil(sqrt(x-EPS)) 07/11 23:07
8F:→ tropical72:谢谢tkcn,这支程式码已 AC, 非常感谢您的指导 *^_^* 07/11 23:14







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:WOW站内搜寻

TOP