Pagini recente » Cod sursa (job #189083) | Cod sursa (job #1869199) | Cod sursa (job #15160) | Cod sursa (job #1160794) | Cod sursa (job #114990)
Cod sursa(job #114990)
#include <stdio.h>
#include <fstream>
#include <vector>
using namespace std;
#define in "multiplu.in"
#define out "multiplu.out"
#define dim 19
int A, B, N, M;
int X[dim], NrC=0;
unsigned long long T;
inline int Maxim(int A, int B) { return A > B ? A : B; }
void Back(int);
void Try();
int main()
{
freopen(in,"r",stdin);
freopen(out,"w",stdout);
scanf("%d%d", &A, &B);
M = N = Maxim(A,B);
while ( M ) M /= 10, NrC++;
int S = 0, K = 0;
while ( S <= NrC ) K *= 10, K += 1, S++;
if ( N > K ) NrC += 1;
for ( ; NrC <= 18; NrC++ )
{
X[1] = 1;
Back(2);
}
}
void Back(int k)
{
for ( int i = 0; i <= 1; i++ )
{
X[k] = i;
if ( k == NrC ) Try();
else Back(k+1);
}
}
void Try()
{
T = 0;
for ( int i = 1; i <= NrC; i++ )
{
T *= 10, T += X[i];
}
if ( T % A == 0 && T % B == 0 )
{
printf("%llu", T);
exit(0);
}
}