分数拆分

来源:互联网 发布:如何注册手机淘宝店铺 编辑:程序博客网 时间:2024/05/02 02:58

输入正整数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


#include<iostream>

using namespace std;


void fun(int k)
{
for (int y = k+1; y <= 2*k; y++)
{
int a = k*y;
int b = y-k;
int x = a/b;
if (a%b == 0 && x >= y)
{
cout << "1/" << k << "=" << "1/" << x << "+" << "1/" << y << endl;
}
}
}


1/12=1/24+1/24

0 0
原创粉丝点击