Cod sursa(job #115094)

Utilizator znakeuJurba Andrei znakeu Data 16 decembrie 2007 10:46:42
Problema Multiplu Scor 20
Compilator cpp Status done
Runda preONI 2008, Runda 2, Clasele 11-12 Marime 0.8 kb
#include <stdio.h>
#include <math.h>


int cmmmc(int a, int b)
{
	int k=1,i;
	for (i=1; i<=a; i++)
		if (a%i==0 && b%i==0)
			k=i;
	return a*b/k;
	
}


int mod(int A[], int B)
{
      int i, t = 0;
      for (i = A[0]; i > 0; i--)
              t = (t * 10 + A[i]) % B;
      return t;
}


int A[100];

int main()
{
	int i,x,y,z,snf=1;
	FILE *in=fopen("multiplu.in","r"), *out=fopen("multiplu.out","w");
	
	fscanf(in,"%d%d",&x,&y);
	
	z=cmmmc(x,y);
	A[0]=1;
	while (snf)
	{
		i=1;
		A[i]++;
		while (A[i]>1)
		{
			A[i]=0;
			A[i+1]++;
			i++;		
		}
		if (i>A[0])
			if (A[i]==1)
				A[0]=i;
			else
				A[0]=i-1;
		if (mod(A,z)==0)
			snf=0;
	}
	for (i=A[0]; i>0; i--)
		fprintf(out,"%d",A[i]);
	fprintf(out,"\n");
	fclose(in);
	fclose(out);	
	return 0;
}