求1/X+1/Y= 1/N的所有正整数解
来源:互联网 发布:html5 微场景源码 编辑:程序博客网 时间:2024/06/05 23:03
第一行输入一个正整数M,下面有M行,每一行都是一个正整数N.
输出共M行,每行都是方程解的个数.
Sample Input:
2
1
2
Sample Output:
1
3
提示:当N=2时,共有三个解 X=4,Y=4; X=3,Y=6;X=6,Y=3.
#include <stdio.h> #include <math.h> struct TOne { int nFact; int nExp; }; struct TStd { int nFact[20]; int nExp[20]; int nCnt; }; TOne tGetOne(int nDiv,int & nNum); TStd tGetStd(int nNum); void Input(int nCase); void vOut(TStd tOut); int main() { int nCase; scanf("%d",&nCase); Input(nCase); return 0; } TOne tGetOne(int nDiv,int & nNum) { TOne tRet; tRet.nExp=0; tRet.nFact=nDiv; while(0==nNum%nDiv) { tRet.nExp++; nNum/=nDiv; } return tRet; } TStd tGetStd(int nNum) { TStd tRet; TOne tA; int i,j,nUpLimit; nUpLimit=(int)sqrt(nNum*1.0); i=2; j=0; while(i<=nUpLimit) { tA=tGetOne(i,nNum); if(tA.nExp>0) { tRet.nFact[j]=tA.nExp; tRet.nExp[j]=tA.nExp; j++; nUpLimit=(int)sqrt(nNum*1.0); } i++; } if(nNum>1) { tRet.nFact[j]=nNum; tRet.nExp[j]=1; j++; } tRet.nCnt=j; return tRet; } void Input(int nCase) { int i,nN; TStd tAns; for(i=1;i<=nCase;i++) { scanf("%d",&nN); tAns=tGetStd(nN); vOut(tAns); } } void vOut(TStd tOut) { int i,nOut; nOut=1; for(i=0;i<tOut.nCnt;i++) { nOut*=(2*tOut.nExp[i]+1); } printf("%d\n",nOut); }
0 0
- 求1/X+1/Y= 1/N的所有正整数解
- 输入正整数 k,找到所有的正整数 x ≥ y,使得 1/k =1/x + 1/y
- SPOJ Equation :求 1/n!=1/x+1/y 的解的个数
- SPOJ Equation :求 1/n!=1/x+1/y 的解的个数
- bzoj 4152 the camptin (dis[x][y]=min(|x.x-y.x|,|x.y-y.y|),求1,n最短路)
- 求区间x∈[1,n],y∈[1,m],gcd(x,y)=1的数量 [容斥]
- 省赛i题/求1~n内所有数对(x,y),满足最大公约数是质数的对数
- 输入正整数k,找到所有的正整数x>=y,使得1/k=1/x + 1/y; 样例输入: 2 12 样例输出: 2 1/2 = 1/6 + 1/3 1/
- (x&y) + ( (x^y)>>1 )求平均值
- 求正整数的x,y的最小公倍数
- 证明题:证明当n是一个整数且n>2时,方程x^n+y^n=z^n无正整数x,y,z的解。
- 笔试面试13--给定 x, k ,求满足 x + y = x | y 的第 k 小的正整数 y
- 求小于等于N的所有正整数里面包含的1的个数
- 求1到n的所有正整数中1出现的次数
- 求指定分段函数y=x-1(x>1);y=-x+1(x<=1)的输出
- 求正整数n以内的所有素数
- 求小于正整数N的所有质数
- 1、请编写函数foo(int x, int y, int n) 计算:随机生成x个大小为[1,y]的正整数,它们的和为n的概率是多少?语言仅限于PHP、C/C++、Java中的一种。
- 关于contain_of的理解
- Linux c学习--从标准输入输出看流和缓冲区
- tomcat配置数据源
- CentOS安装配置redis
- 甲骨文为树莓派版(ARM)Java提供支持
- 求1/X+1/Y= 1/N的所有正整数解
- Arduino - 人体红外传感器(PIR)模块HC-SR501
- 为了得到有限资源,不惜浪费优秀人力。
- <input> 格式限定(只能输入中文或者数值等)
- Java Web项目开发需要掌握的技术
- 虚拟现实(VR)
- TCP协议的KeepAlive机制与HeartBeat心跳包
- 罗世礼-信息架构
- Android-git的第一次使用-将本地文件上传到github