完数
http://acm.hdu.edu.cn/showproblem.php?pid=1406
Time Limit: 2000/1000 MS (Java/Others)
Memory Limit: 65536/32768 K (Java/Others)
Problem Description
完数的定义:如果一个大于1的正整数的所有因子之和等于它的本身,则称这个数是完数,比如6,28都是完数:6=1+2+3;28=1+2+4+7+14。 本题的任务是判断两个正整数之间完数的个数。
Input
输入数据包含多行,第一行是一个正整数n,表示测试实例的个数,然后就是n个测试实例,每个实例占一行,由两个正整数num1和num2组成,(1<num1,num2<10000) 。
本文URL地址:http://www.bianceng.cn/Programming/sjjg/201410/45516.htm
Output
对于每组测试数据,请输出num1和num2之间(包括num1和num2)存在的完数个数。
Sample Input
22 55 7
Sample Output
01
注意区间端点问题。。
完整代码:
/*0ms,208KB*/ #include<cstdio> #include<algorithm> using namespace std; const int perfect_number[] = {6, 28, 496, 8128}; int main() { int t, a, b, i, j; scanf("%d", &t); while (t--) { scanf("%d%d", &a, &b); if (a > b) swap(a, b); for (i = 0; i < 4; ++i) if (a <= perfect_number[i]) break; for (j = 0; j < 4; ++j) if (b < perfect_number[j]) break;///小心! printf("%d\n", j - i); } return 0; }
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索实例
, hdu1716 排序 oj
, 多行
, 数论
, 整数
, 两个
, 个数
, 整数对 acm
一行
hdu 数论、完全数、完全数有哪些、1000以内的完数、完数的算法,以便于您获取更多的相关知识。