Cod sursa(job #3368429)
| Utilizator | Data | 14 octombrie 2026 14:19:19 | |
|---|---|---|---|
| Problema | Multiplu | Scor | 20 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.75 kb |
#include <fstream>
#define MAX 2000001
using namespace std;
ifstream cin("multiplu.in");
ofstream cout("multiplu.out");
long long int a,b,re,x,p,u;
int v[MAX],r[MAX],t[MAX],x1[MAX];
int main()
{
cin>>a>>b;
x=a*b;
while(b!=0)
{
re=a%b;
a=b;
b=re;
}
x=x/a;
v[1]=1;
r[1]=1%x;
u=1;
while(1==1)
{
p++;
if(r[p]==0)
{
break;
}
v[++u]=0;
r[u]=(r[p]*10)%x;
t[u]=p;
v[++u]=1;
r[u]=(r[p]*10+1)%x;
t[u]=p;
}
int nr=0;
while(p!=0)
{
x1[++nr]=v[p];
p=t[p];
}
for(int i=nr;i>0;i--)
{
cout<<x1[i];
}
return 0;
}
