Pagini recente » Cod sursa (job #3137302) | Cod sursa (job #456775) | Cod sursa (job #1856604) | Cod sursa (job #532938) | Cod sursa (job #3140232)
#include <fstream>
#include <algorithm>
#include <numeric>
#include <queue>
using namespace std;
using ll=long long;
ifstream in("multiplu.in");
ofstream out("multiplu.out");
queue<int>q;
vector<int>minn(2e6+1,0);
void back(int a, int lowm) {
if (a==1) {
out<<1;
return;
}
back(minn[a], lowm);
if ((minn[a]*10)%lowm==a)
out<<0;
else
out<<1;
}
int main() {
int a,b;
in>>a>>b;
int lowm = a*b/__gcd(a,b);
q.push(1);
minn[1]=1;
while (!q.empty())
{
int t = q.front();
q.pop();
if (!minn[(t*10)%lowm])
minn[(t*10)%lowm]=t,q.push((t*10)%lowm);
if (!minn[(t*10+1)%lowm])
minn[(t*10+1)%lowm]=t,q.push((t*10+1)%lowm);
}
back(0,lowm);
return 0;
}