思路:枚举y,其范围为[k,2k]
#include <cstdio>
using namespace std;
const int maxk=10005;
int xs[maxk]; //不能与变量同名
int ys[maxk];
int main(){
int k,cnt;
while(scanf("%d",&k)!=EOF){
cnt=0;
int x,y;
for(y=k+1;y<=2*k;y++){
x=(k*y)/(y-k);
if((x*(y-k)==k*y)&&(x>=y)) { //判断x是不是整数
xs[cnt]=x;ys[cnt++]=y;
}
}
printf("%d\n",cnt);
for(int i=0;i<cnt;i++) printf("1/%d = 1/%d + 1/%d\n",k,xs[i],ys[i]);
}
return 0;
}