分数拆分
输入正整数k,找到所有的正整数x>=y,使得1/k=1/x + 1/y;
样例输入:2
12
样例输出:
2
1/2 = 1/6 + 1/3
1/2 = 1/4 + 1/4
8
1/12 = 1/156 + 1/13
1/12 = 1/84 + 1/14
1/12 = 1/60 + 1/15
1/12 = 1/48 + 1/16
1/12 = 1/36 + 1/18
1/12 = 1/30 + 1/20
1/12 = 1/28 + 1/21
1/12 = 1/24 + 1/24
分析:
经典的枚举题,暴力枚举不用太用脑,但对问题进行一定的分析往往会让算法更清晰、高效。
由 x >= y , 1/k=1/x+1/y 可以推导出 x >= 2k >= y
且 y >= 1
所以我们循环 y (