7 人解决,89 人已尝试。
10 份提交通过,共有 323 份提交。
8.9 EMB 奖励。
单点时限: 2.0 sec
内存限制: 256 MB
“ 金无足赤,人无完人 ”,任何人都不是完美的。可是有些数却似乎是完美的,被称为 “ 完美数 ”。
完美数是 1 个数刚好等于他的所有约数+1 的值(即除了它本身外所有因数的和)。
比如:6 有 2 和 3 两个约数,而且 6=2+3+1,所以 6 是一个完美数。
28 的约数是 2,4,7,14,28=2+4+7+14+1,所以 28 是完美数
完美数具有很多有趣的性质:
1、他们都可以写成连续的自然数的和:6=1+2+3;28=1+2+3+4+5+6+7;
2、他们的全部因数的倒数和为 2:1/1+1/2+1/3+1/6=2 1/1+1/2+1/4+1/7+1/14+1/28=2
3、至今发现所有完美数的尾数都是 6 或者 8。
当然,完美数是很少的。迄今为止,也不过发现 29 个,其它的数当然就是不完美数。不完美数可以分为两类 —— 盈数和亏数。如果一个数所有约数和加 1 大于该数本身,那么我们就叫它盈数;如果一个数所有约数和加 1 小于该数本身,那么我们就叫它亏数。
给定一个数判断它是完美数,盈数还是亏数。
(此题数据已改,若有疑问,请留言 or 发邮件,thx~)
多组测试数据。
每组数据输入仅一行,一个整数 N(1≤N≤1000000000)。
N=0 时表示输入结束,不需处理。
对于每组测试数据,若 N 是完美数,输出 0;若 N 是盈数,输出 1;若 N 是亏数,输出-1。
4 6 36 0
-1 0 1
7 人解决,89 人已尝试。
10 份提交通过,共有 323 份提交。
8.9 EMB 奖励。