Pagini recente » Cod sursa (job #1052480) | Istoria paginii runda/round_2/clasament | Cod sursa (job #2405786) | Istoria paginii runda/4321 | Cod sursa (job #2232324)
#include<fstream>
#include<iostream>
#include<queue>
#define DN 2000005
#define x first
#define y second
using namespace std;
ifstream fin("multiplu.in");
ofstream fout("multiplu.out");
long long a,b,r,put;
int f,g,s,pr[DN],nr,t,viz[DN],rez[DN];
int q[DN];
int cmmdc(int a,int b)
{
int c;
while(b)
{
c=a%b;
a=b;
b=c;
}
return a;
}
int vf(long long a)
{
while(a)
{
if(a%10>1)
return 0;
a=a/10;
}
return 1;
}
void ve(int f)
{
if(f!=1)
ve(pr[f]);
fout<<rez[f];
}
int main()
{
fin>>a>>b;
r=(a*b)/cmmdc(a,b);
nr=q[1]=1;
viz[1]=1;
rez[1]=1;
for(int i=1;i<=nr;i++)
{
t=(q[i]*10)%r;
if(!viz[t])
{
viz[t]=1;
nr++;
q[nr]=t;
rez[t]=0;
pr[t]=q[i];
}
if(t==0)
break;
t=(t+1)%r;
if(!viz[t])
{
viz[t]=1;
nr++;
q[nr]=t;
rez[t]=1;
pr[t]=q[i];
}
if(t==0)
break;
}
ve(0);
}