Pagini recente » Cod sursa (job #2685553) | Cod sursa (job #2069355) | Cod sursa (job #2394856) | Cod sursa (job #1655931) | Cod sursa (job #2119635)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin ("multiplu.in"); ofstream fout ("multiplu.out");
const int nmax = 1 << 25;
int r[nmax + 1];
vector< int > v;
int gcd (int a, int b) {
while (b > 0) {
int r = a % b;
a = b;
b = r;
}
return a;
}
int main () {
int a, b;
fin >> a >> b;
int lcm = a * b / gcd(a, b);
for (int i = 1; i < nmax; ++ i) {
r[ i ] = r[i >> 1] * 10 + (i & 1);
r[ i ] %= lcm;
if (r[ i ] == 0) {
while (i > 0) {
v.push_back(i & 1);
i >>= 1;
}
for (int j = (int)v.size() - 1; j >= 0; -- j)
fout << v[ j ];
return 0;
}
}
fout << "-1\n";
fin.close();
fout.close();
return 0;
}