Pagini recente » Cod sursa (job #164561) | Cod sursa (job #2631632) | Cod sursa (job #1710572) | Cod sursa (job #2430427) | Cod sursa (job #115261)
Cod sursa(job #115261)
#include<stdio.h>
const int maxn = 2000000;
const int maxn1 = 60000;
bool ver[maxn];
int n,m;
int i;
int mu;
int a[maxn1];
int b[maxn1];
bool sol;
int j;
int gcd(int i,int j)
{
while(j)
{
int aux = j;
j = i % j;
i = aux;
}
return i;
}
int verif(int i)
{
while(i)
{
if (i % 10 != 1 && i % 10 != 0) return false;
i /= 10;
}
return true;
}
void bkt(int i,int r)
{
if (ver[r]) return ;
if (verif(r) && i != 1)
{
b[++b[0]] = r;
sol = 1;
return ;
}
ver[r] = 1;
int j;
for(j = 0;j < 10; ++j)
{
if ((r + mu * j) % 10 == 0 || (r + mu * j) % 10 == 1)
{
bkt(i + 1,(r + mu * j) / 10);
if (sol)
{
b[++b[0]] = (r + mu * j) % 10;
return ;
}
}
}
}
int main()
{
freopen("multiplu.in","r",stdin);
freopen("multiplu.out","w",stdout);
scanf("%d %d",&n,&m);
mu = n * m / gcd(n,m);
bkt(1,0);
for(i = 1;i <= b[0];++i)
{
printf("%d",b[i]);
}
printf("\n");
return 0;
}