Pagini recente » Cod sursa (job #161376) | Cod sursa (job #2120405) | Cod sursa (job #1583159) | Cod sursa (job #451982) | Cod sursa (job #522175)
Cod sursa(job #522175)
#include<fstream.h>
#include<string.h>
int r[2000000],c[2000000],t[2000000];
char viz[2000000],S[2000000];
int i,j,a,b,m,u,p,ok,q;
int main(){
fstream f("multiplu.in");
ofstream g("multiplu.out");
f>>a>>b;
m=a*b;
while(b){
q=a%b;
a=b;
b=q;
}
m=m/a;
p=u=1;
c[1]=1;
r[1]=1;
ok=1;
viz[1]=1;
while(ok){
for(i=0;i<=1;i++)
if(viz[(r[p]*10+i)%m]==0){
u++;
r[u]=(r[p]*10+i)%m;
viz[r[u]]=1;
c[u]=i;
t[u]=p;
if(r[u]==0){
ok=0;
break;
}
}
p++;
}
i=0;
while(u){
S[i++]=c[u]+'0';
u=t[u];
}
for (i--;i>=0;i--)
g<<S[i];
f.close();
g.close();
return 0;
}