https://vjudge.net/problem/UVA-10976
今天不知道为什么 不想认真学 有问题 很奇怪 可能是 过生日的原因吧 写一道垃圾的水题 其实也不水。。。
就是说 给定一个k 求x>=y 都是正整数 三个数字
1/k=1/x+1/y
求几个符合这个式子的x y
乍看起来x y都是无限大
根据这个式子可以枚举y 来推x 就成了
#include<algorithm> #include<iostream> #include<vector> #include<cstdio> #include<cstring> #include<cmath> #include<string> #include<ctime> #include<map> #include<stack> #include<set> #include<cstring> #include<sstream> #include<queue> using namespace std; typedef long long ll; typedef pair<int, int> pi; const int maxn = 20; int main() { int k; int cnt; while (cin >> k) { cnt = 0; for (int i = 1; i <= 2 * k; i++) { if (i <= k) continue; if ((k * i) % (i - k) == 0) { cnt++; } } cout << cnt << endl; for (int i = 1; i <= 2 * k; i++) { if (i <= k) continue; if ((k * i) % (i - k) == 0) { cout << "1/" << k << " = 1/" << (k * i) / (i - k) << " + 1/" << i << endl; } } } return 0; }
Comments | NOTHING