Cod sursa(job #2330322)

Utilizator Iulia25Hosu Iulia Iulia25 Data 28 ianuarie 2019 11:26:01
Problema Multiplu Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <fstream>

using namespace std;

ifstream fin ("multiplu.in");
ofstream fout ("multiplu.out");

int a, b, m, rest, v[50], n, k;

int cmmmc(int x, int y)  {
  int r = x % y, p = x * y;
  while (r)  {
    x = y;
    y = r;
    r = x % y;
  }
  return p / y;
}

int main()  {
  fin >> a >> b;
  m = cmmmc(a, b);
  for (int i = 1; ; ++i)  {
    n = 0;
    rest = 0;
    k = 0;
    bool ok = false;
    for (int s = i; s; s >>= 1)  {
      k <<= 1;
      k += (s & 1);
    }
    for (int s = k, s2 = i; s2; s >>= 1, s2 >>= 1)  {
      v[++n] = s & 1;
      if (s & 1)
        ok = true;
      rest = rest * 10 + (s & 1);
      rest %= m;
    }
    if (rest == 0 && ok)  {
      for (int j = 1; j <= n; ++j)
        fout << v[j];
      break;
    }
  }
}