Cod sursa(job #1822806)

Utilizator Cosmin2004_InfoMoldoveanu Cosmin Cosmin2004_Info Data 5 decembrie 2016 16:40:01
Problema Multiplu Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.17 kb
/*
#include <iostream>
#include <cstdio>

using namespace std;
struct COADA
{
    long long r,n;
};
COADA sir[20000];

int main()
{
    freopen("multiplu.in", "r", stdin);
    freopen("multiplu.out", "w", stdout);
    int a,b,ok=1,k=1;
    scanf("%d%d", &a, &b);
    long long m=1;sir.n[1]=1;if(a==b && a==1){ok=0;printf("1")}
    while( ok )
    {
        m=m*10;k++;sir.n[k]=m;
        if()
    }
    return 0;
} */
#include <iostream>
#include <cstdio>

using namespace std;
int log2(int k)
{
    int b2=1,n=0;
    while(b2<k)
    {
        n++;
        b2*=2;
    }
    return n;
}
int ncif(int k)
{
    int n=0,ck=k;
    while(ck)
    {
        ck=ck/10;
        n++;
    }
    return(n);
}
long long b2(int k)
{
    int r=0,ck=k;
    while(k)
    {
        r=r*10+k%2;
        k=k/2;
    }
    while(log2(ck)-ncif(r))
    {
        r*=10;
    }
    return r;
}

int main()
{
    freopen("multiplu.in", "r",stdin);
    freopen("multiplu.out", "w",stdout);
    int i,a,b;
    scanf("%d%d", &a, &b);
    for(i=2;;i++)
    {
        if(b2(i)%a==0 && b2(i)%b==0)
            break;
    }
    printf("%d", b2(i));
}