Pagini recente » Borderou de evaluare (job #1520377) | Borderou de evaluare (job #1395384) | Borderou de evaluare (job #2238891) | Cod sursa (job #3291802) | Cod sursa (job #1781705)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("multiplu.in");
ofstream g("multiplu.out");
int n,i,j,a,b,c,q[2000001],pred[2000001],rest,lq;
bool ult[2000001];
void drum(int x)
{
if(x!=1) drum(pred[x]);
g<<ult[x];
}
int main()
{
f>>a>>b;
c=a;
while(c%b) c+=a;
lq=1;
q[1]=1;
pred[1]=0;
ult[1]=1;
if(c>1){
for(i=1;i<=lq;i++)
{
for(j=0;j<=1;j++)
{
rest=(10*q[i]+j)%c;
if(pred[rest]==0 && rest!=1)
{
q[++lq]=rest;
pred[rest]=q[i];
ult[rest]=j;
if(rest==0) i=lq+1, j=2;
}
}
}
drum(rest);
g<<'\n';
}
else g<<1<<'\n';
return 0;
}