题目描述 
给定n,求1/x + 1/y = 1/n (x<=y)的解数。(x、y、n均为正整数)

输入描述:
在第一行输入一个正整数T。
接下来有T行,每行输入一个正整数n,请求出符合该方程要求的解数。
(1<=n<=1e9)
输出描述:
输出符合该方程要求的解数。
示例1
输入
3
1
20180101
1000000000
输出
1
5

181

思路:
1/x+1/y=1/n,设x=n+a,y=n+b,化简可得n^2=a*b,
找出n^2的所有因子,根据数论中的唯一分解定理可得
任何整数n都可以表示为 n = p1^e1*p2^e2*..pn^en,
其中p1,p2…,pn都为素数,并且n的约数个数为(1+e1)*(1+e2)*…(1+en),
所以n^2 = (p1^e1*p2^e2…pn^en)^2 = (p1^2e1)*(p2^2e2)…*(pn^2en),所以因子个数为(1+2e1)*(1+2e2)*…(1+2en),所以可以利用唯一分解定理求出e1 e2…en,由于要满足x <= y所以只需找出a <= b的解的个数即可,设因子乘积为res,x<=y,所以res/2+1。
#include <bits/stdc++.h>
using namespace std;
const int N = 1005;
typedef long long ll;int num[N];
int main()
{int t;cin>>t;while(t--){int n,cnt=0;memset(num,0,sizeof(num));cin>>n;for(int i=2;i*i<=n;++i){if(n%i==0){while(n%i==0){num[cnt]++;n/=i;}cnt++;}}if(n!=1){num[cnt]++;cnt++;}int res=1;for(int i=0;i<cnt;++i)res=res*(num[i]*2+1);printf("%d\n",res/2+1);}
}

第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 F 等式 (唯一分解定理)相关推荐

  1. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 K-密码

    第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 K-密码 链接:https://www.nowcoder.com/acm/contest/90/K 来源:牛客网 题目描述 ZiZi登录各种账号的 ...

  2. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 I-填空题

    第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 I-填空题 链接:https://www.nowcoder.com/acm/contest/90/I 来源:牛客网 题目描述 牛客网是是一个专注于 ...

  3. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛

    拖了好久了 链接:https://www.nowcoder.com/acm/contest/90/A 来源:牛客网 跳台阶 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K ...

  4. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 个人笔记 题解

    题目链接:https://ac.nowcoder.com/acm/contest/90#question A.跳台阶 链接:https://ac.nowcoder.com/acm/contest/90 ...

  5. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 L-回旋星空

    链接:https://www.nowcoder.com/acm/contest/90/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语言2621 ...

  6. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛--L-用来作弊的药水

    链接:https://www.nowcoder.com/acm/contest/90/L 来源:牛客网 1.题目描述 -- 在一个风雨交加的夜晚,来自异世界的不愿透露姓名的TMK同学获得了两种超强药水 ...

  7. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 D-psd面试

    时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 题目描述 掌握未来命运的女神 psd 师兄在拿了朝田诗乃 ...

  8. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 G-旋转矩阵

    时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 题目描述 景驰公司自成立伊始,公司便将"推动智 ...

  9. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 G 旋转矩阵(模拟)

    题目描述 景驰公司自成立伊始,公司便将"推动智能交通的发展,让人类的出行更安全,更高效,更经济,更舒适"作为公司使命,通过产业融合.建设智能汽车出行行业的方式,打造"利国 ...

最新文章

  1. java使用ireport生成报表_JasperReport(3)——Java简单使用IReport生成的文件建立报表...
  2. 2048游戏-AI程序算法分析
  3. 金士顿sd卡恢复软件_手机上使用SD内存卡会让手机性能变差?
  4. react 给一个引用的组件添加新属性_高阶组件在React中的应用
  5. 输入文字自动生成图片_批量生成变化的图片文字海报
  6. 如何判断 cxgrid 双击了哪一列_学会根据三视图判断组成几何体的个数,助你中考数学满分...
  7. 【图灵杯 E也即POJ 3368】简单的RMQ
  8. 创业企业的破局之道,在于创业者的二层思维
  9. Flutter进阶—实现动画效果(三)
  10. Nacos概述,下载与安装,初始化配置,服务注册应用,RestTemplate,Feign
  11. 连载:面向对象葵花宝典:思想、技巧与实践(32) - LSP原则
  12. WebService /php soap 相关调用 收藏
  13. AJAX初始化combox 并取值
  14. 【信号与系统】(十三)傅里叶变换与频域分析——周期信号的傅里叶级数
  15. 腾讯云学生服务器如何购买
  16. matlab解决推销员行程问题(可参考mathworks网站)
  17. Java实现 蓝桥杯 算法提高 Monday-Saturday质因子
  18. 新手C语言实现判定三角形及其面积运算
  19. 区块链价值是什么仅仅只是传递吗
  20. 树莓派远程音乐播放器

热门文章

  1. 数字图像处理-Digital Image Processing(DIP)--5图像的平滑处理
  2. 餐厅预订APP有哪些?餐厅预订APP怎么选择?
  3. 值得购买的国产蓝牙耳机有哪些?性价比高的国产蓝牙耳机盘点
  4. 用 zuulFilter 打印请求日志
  5. s4 android4.4.2,终于来了!国际版Galaxy S4升级安卓4.4
  6. JavaScript foreach 方法跳出循环
  7. 洞穴逃生 java_洞穴逃生
  8. 怎么用python横排输出古诗_PYTHON小工具-竖排表格内容转横向输出
  9. 参加第13届全国男性健康日活动有感
  10. linux中d4B什么意思,Linux中环境变量文件及配置+++