Pagini recente » Cod sursa (job #2699234) | Cod sursa (job #3188217) | Cod sursa (job #85408) | Cod sursa (job #275970) | Cod sursa (job #2520685)
#include <fstream>
using namespace std;
const int N=2000001;
int cf[100], before[100], p[N], v[100];
bool viz[N];
ifstream fin("multiplu.in");
ofstream fout("multiplu.out");
int cmmdc(int a, int b)
{
int r=a%b;
while(r)
{
a=b;
b=r;
r=a%b;
}
return b;
}
int main()
{
int a, b;
long long mc, ct, c=0;
fin>>a>>b;
mc=(a*b)/cmmdc(a,b);
int prim, ultim;
prim=ultim=1;
before[1]=1;
p[1]=1;
viz[1]=true;
cf[1]=1;
while(prim<=ultim)
{
for(int i=0; i<2; i++)
{
ct= (p[prim]*10+i)%mc;
if(viz[ct]==false)
{
viz[ct]=true;
cf[++ultim]=i;
before[ultim]=prim;
p[ultim]=ct;
}
if(ct==0)
{
while(ultim>=1)
{
c++;
v[c]=cf[ultim];
ultim=before[ultim];
if(ultim==1)
break;
}
}
}
prim++;
}
fout<<1;
for(int i=c;i>=1;i--)
fout<<v[i];
return 0;
}