hdu1406 完数 (预处理,求x的因子和)
来源:互联网 发布:网络主播好听的歌曲 编辑:程序博客网 时间:2024/06/05 04:48
完数
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 23260 Accepted Submission(s): 8468
Problem Description
完数的定义:如果一个大于1的正整数的所有因子之和等于它的本身,则称这个数是完数,比如6,28都是完数:6=1+2+3;28=1+2+4+7+14。
本题的任务是判断两个正整数之间完数的个数。
本题的任务是判断两个正整数之间完数的个数。
Input
输入数据包含多行,第一行是一个正整数n,表示测试实例的个数,然后就是n个测试实例,每个实例占一行,由两个正整数num1和num2组成,(1<num1,num2<10000) 。
Output
对于每组测试数据,请输出num1和num2之间(包括num1和num2)存在的完数个数。
Sample Input
22 55 7
Sample Output
01
Author
lcy
Source
杭电ACM集训队训练赛(IV)
Recommend
Ignatius.L | We have carefully selected several similar problems for you: 2562 2564 2561 2565 1161
解析:记得判断a与b的大小关系。
代码:
#include<cstdio>#include<algorithm>#define maxn (10000+100)using namespace std;int f[maxn];void yuchuli(){ int i,j,k=maxn>>1; for(i=1;i<=maxn;i++)f[i]=1; for(i=2;i<=k;i++) for(j=i+i;j<=maxn;j+=i) f[j]+=i;}int main(){ yuchuli(); int n,a,b,i,j,k,ans; while(scanf("%d",&n)==1) for(i=1;i<=n;i++) { scanf("%d%d",&a,&b); if(a>b)swap(a,b); for(ans=0,j=a;j<=b;j++)if(f[j]==j)ans++; printf("%d\n",ans); } return 0;}
0 0
- hdu1406 完数 (预处理,求x的因子和)
- hdu1406 完数(数学:求因子之和)
- hdu1215 七夕节 (预处理,求x的因子和)
- 完数(hdu1406)枚举
- ACM_模板_求一个数的所有因子和(预处理打表)
- HDU1406 完数
- hdu1406完数
- hdu1406完数
- HDU1406 完数
- HDU 七夕节(求一个数的因子和)
- 求因子数的和问题
- 求2014^X 因子和
- 求数n和n!的因子和
- Hdu1999 不可摸数(求多个数的因子和)
- hdu1215七夕节(快速求不同因子数的和)
- HDU 3608 0 or 1(求一个数因子和的奇偶)
- 求一个数的所有因子和(包括1不包括自身)
- HDU 1406 完数 因子的和
- 面向对象程序设计上机练习二(函数模板)
- NSUserDefaults和dispatch_once的注意点
- 黑马程序员-Java中比较实用的对象总结
- 面向对象程序设计上机练习三(有默认参数的函数)
- 一键解决从Myeclipse工程打包JavaWeb项目到服务器的Tomcat,并自动部署
- hdu1406 完数 (预处理,求x的因子和)
- 面向对象程序设计上机练习四(变量引用)
- sqlite 的使用方法
- 图片的加载ImageLoader
- Camera 360使用之坑
- 菜鸟猿大战java之String详述
- C++、Java和C#中的异常处理
- Clustering by fast search and find of density
- C/C++ Char* and Char[]