博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
分数拆分
阅读量:5139 次
发布时间:2019-06-13

本文共 533 字,大约阅读时间需要 1 分钟。

#include
#include
using namespace std;int main(){int N;cin>>N;while(N--){ int k,m,n; cin>>k; for(m=k+1;m<=2*k;m++) { if(k*m%(m-k)==0) { n=k*m/(m-k); printf("1/%d=1/%d+1/%d \n",k,n,m); } }}}
数学分析。1)	我们如果 m <= n 。由于 k 必定小于 m 和 n ,则有 k < m <= n 2) 	1/k=1/m+1/n 转换为 n 的等式。为  n = km/(m-k)3)	k 为输入,是已知数。我们要枚举 m 来获得 n 。	由于 k < m <= n ,也就是 k < m <= km/(m-k) 。解得 k < m <= 2k 。4)	因此我们程序要做的就是:		枚举 m 的值为 [k+1,2k] 的一个【整数】,n = km/(m-k) 		看能否得到【整数解 n】

转载于:https://www.cnblogs.com/zsychanpin/p/6742049.html

你可能感兴趣的文章
NAT地址转换
查看>>
Nhibernate 过长的字符串报错 dehydration property
查看>>
Deque - leetcode 【双端队列】
查看>>
gulp插件gulp-ruby-sass和livereload插件
查看>>
免费的大数据学习资料,这一份就足够
查看>>
clientWidth、clientHeight、offsetWidth、offsetHeight以及scrollWidth、scrollHeight
查看>>
企业级应用与互联网应用的区别
查看>>
itext jsp页面打印
查看>>
Perl正则表达式匹配
查看>>
DB Change
查看>>
nginx --rhel6.5
查看>>
Eclipse Python插件 PyDev
查看>>
selenium+python3模拟键盘实现粘贴、复制
查看>>
网站搭建(一)
查看>>
Spring JDBCTemplate
查看>>
Radon变换——MATLAB
查看>>
Iroha and a Grid AtCoder - 1974(思维水题)
查看>>
gzip
查看>>
转负二进制(个人模版)
查看>>
LintCode-Backpack
查看>>