Pagini recente » Cod sursa (job #2393799) | Cod sursa (job #777021) | Cod sursa (job #856252) | Cod sursa (job #2104233) | Cod sursa (job #114992)
Cod sursa(job #114992)
#include <stdio.h>
const char iname[] = "multiplu.in";
const char oname[] = "multiplu.out";
int solve(int cnt, int A, int B)
{
int a;
int b;
int i, cntr, sup = 1 << (cnt - 1);
for (cntr = 0; cntr < sup; ++ cntr)
{
a = b = 1;
for (i = cnt - 2; i >= 0; -- i)
{
a = (a * 10 + ((cntr >> i) & 1)) % A;
b = (b * 10 + ((cntr >> i) & 1)) % B;
}
if (a + b == 0) {
printf("1");
for (i = cnt - 2; i >= 0; -- i)
printf("%d", ((cntr >> i) & 1));
return 1;
}
}
return 0;
}
int getCifre(int X) {
int n = 0;
while (X) n ++, X /= 10;
return n;
}
int main(void)
{
freopen(iname, "r", stdin);
freopen(oname, "w", stdout);
int A, B;
scanf("%d %d", &A, &B);
int cnt = getCifre(A);
int tmp = getCifre(B);
if (cnt < tmp)
cnt = tmp;
for (; !solve(cnt, A, B); cnt ++) ;
return 0;
}