UVA10976-Fractions Again?!

  • Post author:
  • Post category:其他


题意还是很明显,就是让你找。

但是还是需要先分析,xy关系可以推算出y的最大范围2k

然后公式两边乘一乘,枚举y即可求出x,再判断。

#include<stdio.h>
#include<math.h>
using namespace std;
#define eps 1e-9
//x(y-k)=y*k
int main()
{
    int k,x,y;
    while(scanf("%d",&k)!=EOF)
    {
        int sum=0;
        for(int y=k+1;y<=2*k;y++){
            if((y*k)%(y-k)==0){
                int t=(y*k)/(y-k);
                if(t>=y) sum++;
            }
        }
        printf("%d\n",sum);
        for(int y=k+1;y<=2*k;y++){
            if((y*k)%(y-k)==0){
                int t=(y*k)/(y-k);
                if(t>=y) printf("1/%d = 1/%d + 1/%d\n",k,t,y);
            }
        }
    }
    return 0;
}



版权声明:本文为hy1405430407原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。