C
来源:互联网 发布:网络系统工程师简历 编辑:程序博客网 时间:2024/05/18 03:03
题目:给你一个数k,求所有使得1/k = 1/x + 1/y成立的x≥y的整数对。
分析:数论,枚举。枚举所有在区间(k+1,2k)上的y即可,当1/k - 1/y的结果分子为1即为一组解。
#include<bits/stdc++.h>using namespace std;int x[1100];int y[1100];int main(){ int n; while(~scanf("%d", &n)) { int cc = 0; for(int i = 1 + n; i <= 2 * n; i++) { if(n * i % ( i - n) == 0) { x[cc] = n * i/( i - n); y[cc++] = i; } } printf("%d\n",cc); //printf("%d\n",cc); for(int i = 0; i < cc; i++) printf("1/%d = 1/%d + 1/%d\n",n,x[i],y[i]); }}
0 0
- c
- c
- c
- c
- C
- c
- c
- c
- C+
- c
- C
- c
- c
- c
- C
- C
- c
- C
- LeetCode 169. Majority Element
- Android SDK Eclipse 国内镜像
- 数据配合使用过滤器limitBy过滤数据
- 数码管循环右移
- 计算几何相关知识清单
- C
- 系统设计的三要素
- [矩阵 点分治] BZOJ 4623 Styx
- Introduction_to_Algorithms_chap4
- 2017年3月17日,周结(四),学生信息管理系统
- 阻止冒泡的兼容性写法,以及阻止浏览器默认事件
- HDU2795线段树
- BZOJ 1188 [SG定理][博弈论]
- Introduction_to_Algorithms_chap5