Cod sursa(job #715126)

Utilizator SebiSebiPirtoaca George Sebastian SebiSebi Data 16 martie 2012 18:31:00
Problema Multiplu Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include<iostream>
#include<fstream>
using namespace std;
int st[25],n,a,b,v[25],d;
int rest(int a[], int b, int n)
{
	int i,aux,t;
	for(i=1;i<=n/2;i++) {
		aux=a[i];
		a[i]=a[n-i+1];
		a[n-i+1]=aux;
	}
	t=0;
	for(i=n;i>=1;i--) 
		t=(t*10+a[i])%b;
	return t;
}
inline void bktr(int p)
{
	int pval,i;
	for(pval=0;pval<=1 && d==0;pval++) {
		st[p]=pval;
		for(i=1;i<=p;i++)
			v[i]=st[i];
		if((rest(v,a,p)==0)&&(rest(v,b,p)==0)) {
			d=p;
			return ;
		}
		if((d==0)&&(p<20))
			bktr(p+1);
	}
}
int main ()
{
	int i;
	ifstream f("multiplu.in");
	ofstream g("multiplu.out");
	f>>a>>b;
	f.close();
	st[1]=1;
	bktr(2);
	for(i=1;i<=d;i++)
		g<<st[i];
	g.close();
	return 0;
}