分数拆分
题目大意:
给出一个数k,问满足1/k=1/x+1/y且x>=y的x,y有多少对
原题:

解题思路:
首先k1=x1+y1,变式为k1−y1=x1,然后再变成(k∗y)/(y−k)1=x1,所以得出(k∗y)/(y−k)=x,然后直接枚举y就可以了
解题思路:
#include<cstdio>
using namespace std;
long long k,ans;
int main()
{
scanf("%dll",&k);
for (long long y=k+1;(y*k)/(y-k)>=y;++y)
if ((y*k)%(y-k)==0) ans++;
printf("%lld",ans);
}