Pagini recente » Cod sursa (job #661709) | Cod sursa (job #1594016) | Cod sursa (job #944563) | Cod sursa (job #2967706) | Cod sursa (job #392181)
Cod sursa(job #392181)
#include<cstdio>
#define M 2000001
using namespace std;
#include<queue>
#include<bitset>
bitset<M>viz;
int a,b,c;
int cmmdc()
{
int r;
while (b)
{
r=a%b;
a=b;
b=r;
}
return a;
}
queue<int>q;
void bf()
{
b=0;
q.push(1);
viz[1]=1;
int x,y;
while (true)
{
x=q.front();
q.pop();
y=x*10%c;
if (!viz[y])
{
++b;
if (!y)
return;
q.push(y);
}
if (!viz[y])
{
y=(x*10+1)%c;
++b;
if (!y)
return;
q.push(y);
}
}
}
void afis(int b)
{
if (!b)
return;
if (b&1)
{
afis(b>>1);
printf("0");
}
else
{
afis((b-1)>>1);
printf("1");
}
}
int main()
{
freopen("multiplu.in","r",stdin);
freopen("multiplu.out","w",stdout);
scanf("%d%d",&a,&b);
int p=a*b;
c=p/cmmdc();
bf();
printf("1");
afis(b);
return 0;
}