Pagini recente » Cod sursa (job #1102214) | Cod sursa (job #3307627) | Cod sursa (job #3318119) | Cod sursa (job #1079783) | Cod sursa (job #3338411)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("multiplu.in");
ofstream fout("multiplu.out");
const int MAXC=10005;
void atribuire_scalar(int A[],int x){
A[0]=0;
if(x==0){
A[0]=1;
A[1]=0;
}else{
while(x){
A[++A[0]]=x%10;
x/=10;
}
}
}
void impartire(int A[],int x,int C[],int &r){
r=0;
C[0]=A[0];
for(int i=A[0];i>=1;i--){
int curent=10*r+A[i];
C[i]=curent/x;
r=curent%x;
}
while(C[0]>1&&C[C[0]]==0)
C[0]--;
}
int main(){
int a,b;
fin>>a>>b;
int M[MAXC];
for(int i=1;;i++){
int M1[MAXC],M2[MAXC],C1[MAXC],C2[MAXC];
int r1,r2;
atribuire_scalar(M1,i);
atribuire_scalar(M2,i);
impartire(M1,a,C1,r1);
impartire(M2,b,C2,r2);
if(r1==0&&r2==0){
for(int j=0;j<=M1[0];j++)
M[j]=M1[j];
break;
}
}
int r;
impartire(M,2,M,r);
for(int j=M[0];j>=1;j--)
fout<<M[j];
return 0;
}