UVA Problem 10976 (Fractions Again) Solution

Problem Solving, UVa

 

 

#include <bits/stdc++.h>

using namespace std;



int main()

{

    int x,y,k,n,i,KK,X[10005],Y[10005];

    bool f;

    KK=0;

    while(cin>>k)

    {

        KK=0;

        //X[105]=Y[105]={0};

        memset(X, 0, sizeof(X[0]) * 10005);

        memset(Y, 0, sizeof(Y[0]) * 10005);

                   

         for(y= 2*k ; y!=k; y--)

            {

            //    x=(k*y)/(y-k);

               

                if((k*y)%(y-k)==0)

                {

                    x=(k*y)/(y-k);

                    X[KK] = x;

                    Y[KK] =y;

                    KK++;

                }

               

            }

       

         printf("%d\n",KK);

        for (int i = (KK - 1); i >= 0; --i) {

            printf("%d/%d = %d/%d + %d/%d\n", 1, k, 1, X[i], 1, Y[i]);

        //if (f==true)

        //printf("%d = %d + %d\n",1/k,1/x,1/y);

    }

}

    return 0;

}

 

0 Comments

You may find interest following article