Cod sursa(job #1796223)

Utilizator circeanubogdanCirceanu Bogdan circeanubogdan Data 3 noiembrie 2016 11:10:12
Problema Multiplu Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.94 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("multiplu.in");
ofstream g("multiplu.out");
long long c;
int i,j,k,ok,a,aa,b,bb,r;
int x[100000],y[100000];
int inm(int A[],int x,int B[])
{
    int t=0,i,ok=1;
    for(i=1;i<=A[0]||t;i++)
    {
        t+=A[i]*x;
        B[i]=t%10;
        t=t/10;
        if(B[i]>1)
        {
            ok=0;
            break;
        }
    }
    B[0]=i-1;
    if(ok==1) return 1;
    else return 0;

}
int main()
{
    f>>a>>b;
    aa=a;
    bb=b;
    while(a!=0)
    {
        r=b%a;
        b=a;
        a=r;
    }
    c=aa*bb/b;
    while(c!=0)
    {
        x[++k]=c%10;
        c/=10;
    }
    x[0]=k;
    for(i=2; ;i++)
    {
        ok=inm(x,i,y);
        if(ok==1)
        {
            for(i=y[0];i>=1;i--)
                g<<y[i];
            return 0;
        }
        for(j=1;j<=y[0];j++)
            y[0]=0;
    }
    return 0;
}