Pagini recente » Cod sursa (job #1223919) | Cod sursa (job #2035210) | Cod sursa (job #2201139) | Cod sursa (job #2201184) | Cod sursa (job #129421)
Cod sursa(job #129421)
#include <stdio.h>
#define DIM 2000001
int c[DIM];
int t[DIM];
char uc[DIM];
char viz[DIM];
int p,u,m,r,a,b;
FILE *g;
void sol(int u){
if (u!=0) {
sol(t[u]);
fprintf(g,"%d",uc[u]);
}
}
void main(){
FILE *f = fopen("multiplu.in","r");
g = fopen("multiplu.out","w");
fscanf(f,"%d %d",&a,&b);
fclose(f);
p = a*b;
while (b!=0) {
r = a % b;
a=b;
b=r;
}
m=p/a;
p=1;
u=1;
c[1]=1;
uc[1]=1;
t[1]=0;
viz[1]=1;
while (p<=u) {
if (viz[(c[p]*10)%m]==0) {
u++;
c[u]=(c[p]*10)%m;
uc[u]=0;
viz[c[p]*10]=1;
t[u]=p;
if ((c[p]*10)%m==0) sol(u);
}
if (viz[(c[p]*10+1)%m]==0) {
u++;
c[u]=(c[p]*10+1)%m;
uc[u]=1;
viz[(c[p]*10+1)%m]=1;
t[u]=p;
if ((c[p]*10+1)%m==0) sol(u);
}
p++;
}
fclose(g);
}