对于UVA的格式我是服的!
解题思路:
暴力枚举就行了;
但有范围的,
x>=y,1/k=1/x+1/y-------->2k>=y;
y的范围知道了,在求x;
x=(y*k)/(y-k),你知道的够多了,打代码吧!
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
int n;
while(cin>>n){
int sum=0;
for(int i=n+1;i<=2*n;i++)
{
if((i*n)%(i-n)==0)
sum++;
}
cout<<sum<<endl;
for(int i=n+1;i<=2*n;i++)
{
int t=(i*n)/(i-n);
if((i*n)%(i-n)==0&&t>n)
printf("1/%d = 1/%d + 1/%d\n",n,t,i);
}
}
return 0;
}