Pagini recente » Cod sursa (job #2669895) | Cod sursa (job #1796248) | Cod sursa (job #2907070) | Cod sursa (job #2924637) | Cod sursa (job #679080)
Cod sursa(job #679080)
#include <fstream>
#include <cstring>
#define maxN 31
using namespace std;
ifstream in;
ofstream out;
int r[maxN];
inline int eucl(int a,int b)
{
if(b==0) return a;
for(int r=a%b;b;r=a%b,a=b,b=r);
return a;
}
int main()
{
int A,B,mod;
in.open("multiplu.in");
in>>A>>B;
in.close();
mod=eucl(A,B);
mod=((long long)A*B)/mod;
out.open("multiplu.out");
int end=(1<<30);
r[1]=1;
for(int i=2;i<maxN;++i)
r[i]=(r[i-1]*10)%mod;
for(int i=1;i<=end;++i)
{
int sum=0;
int x=i,bit=1;
for(bit=1;x;x>>=1,++bit)
if(x&1) sum+=r[bit];
if(sum%mod==0)
{
bit-=2;
for(x=i;bit>=0;--bit)
if(x&(1<<bit)) out<<'1';
else out<<'0';
break;
}
}
out<<'\n';
out.close();
return 0;
}