Fractions Again?! -UVA 10976

来源:互联网 发布:ubuntu破解root密码 编辑:程序博客网 时间:2024/06/16 06:51

题目:uva10976

很简单的暴力求解题,正如书上所说 x>=y ,所以1/x<=1/y,可得y<=2k;

所以枚举y就可以了 用y计算出x就可以了

#include<iostream>#include<set>#include<iterator>#include<string>#include<set>#include<typeinfo>#include<queue>#include<list>#include<algorithm>#include<cstdio>#include<cctype>#include<cstring>#include<map>#include<vector>#include<cstdlib>#include<cmath>#include<stack>#include<sstream>#include<iomanip>const int maxn = 30;using namespace std;int main(){    int k;    while(cin>>k)    {        int x=0,y=0;        int count1=0;        for( y =1;y<=2*k;y++)        {              x=(k*y)/(y-k);            if(((k*y)%(y-k)==0)&&x>=y)                count1++;                //cout<<"1/"<<k<<" = "<<"1/"<<x<<" + 1/"<<y<<endl;        }        cout<<count1<<endl;          for( y =1;y<=2*k;y++)        {            x=(k*y)/(y-k);               if(((k*y)/(y-k)==0)&&x>=y)                printf("1/%d = 1/%d + 1/%d\n",k,x,y);        }    }}


0 0
原创粉丝点击