汝刘佳白书上的115页的题目,精度很烦人
具体参考: http://www.myexception.cn/ai/1236387.html
#include <iostream>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <vector>
using namespace std;
int main(){
long long k,i;
while (scanf("%lld",&k)==1)
{
vector<pair<long long,long long> >ans;
for (i=k+1;i<=k*2;++i)
{
double t=1.0/(1.0/(double)k-1.0/(double)i);
long long intT=(int)(t+0.5);
if(t>0&&fabs(t-intT)<1e-4){
ans.push_back(make_pair(intT,i));
}
}
printf("%d\n",ans.size());
for (i=0;i<ans.size();++i)
{
printf("1/%lld = 1/%lld + 1/%lld\n",k,ans[i].first,ans[i].second);
}
}
return 0;
}