Pagini recente » Cod sursa (job #645383) | Cod sursa (job #1953011) | Cod sursa (job #2096920) | Cod sursa (job #2730758) | Cod sursa (job #1092781)
/// Craciun Catalin
/// Multiplu
/// PreONI 2008, clasa a X-a, Runda 2
#include <fstream>
#include <iostream>
#define min(a,b) ((a<b)?(a):(b))
#define LMax 8
using namespace std;
ifstream f("multiplu.in");
ofstream g("multiplu.out");
long a,b;
bool gasitRez=0;
int C[LMax];
long rez;
void gasit(int lenght)
{
long x=0;
for (int i=1;i<=lenght;i++)
x=x*10+C[i];
if (x%a==0 && x%b==0)
g<<x<<'\n', gasitRez=1;
}
void solve(int lenght)
{
int k=1;
bool ok;
C[k]=-1;
while (k>0)
{
ok=0;
while (C[k]<1 && !ok)
{
C[k]++;
if (!C[1])
ok=0;
else
ok=1;
}
if (!ok)
k--;
else if (!gasitRez)
if (k==lenght)
gasit(lenght);
else
{
k++;
C[k]=-1;
}
}
}
int main()
{
f>>a>>b;
f.close();
for (int i=1;i<LMax && !gasitRez;i++)
solve(i);
g.close();
return 0;
}