Cod sursa(job #1883096)

Utilizator demetriad-dagpagDavid Demetriad demetriad-dagpag Data 17 februarie 2017 18:37:26
Problema Multiplu Scor 30
Compilator c Status done
Runda Arhiva de probleme Marime 0.97 kb
#include <stdio.h>
#include <stdlib.h>
int v[25],m[25];
int rest(int ct,int nr)
{
    int i,z;
    i=ct;
    z=0;
    while(i<25 && z<nr)
        z=z*10+v[i],i++;
    z=z-z/nr*nr;
    while(i<25)
    {
        i++;
        z=z*10+v[i];
        z=z-z/nr*nr;
    }
    return z;
}
int main()
{
    int a,b,aa,bb,r,i,s,cmmmc;
    freopen("multiplu.in","r",stdin);
    freopen("multiplu.out","w",stdout);
    scanf("%d%d",&a,&b);
    aa=a;
    bb=b;
    while(b)
    {
        r=a%b;
        a=b;
        b=r;
    }
    cmmmc=(aa*bb)/a;
    for(i=24; i>0; i--)
    {
        v[i]=1;
        m[i]=rest(i,cmmmc);
        v[i]=0;
    }
    s=0;
    while(6==6)
    {
        for(i=24; i>0 && v[i]==1; i--)
            v[i]=0,s-=m[i];
        v[i]=1;
        s+=m[i];
        if(s%cmmmc==0)
            break;
    }
    i=1;
    while(v[i]==0)
        i++;
    while(i<25)
    {
        printf("%d",v[i]);
        i++;
    }

    return 0;
}