Cod sursa(job #214856)

Utilizator IrnukIrina Grosu Irnuk Data 16 octombrie 2008 16:04:10
Problema Next Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
/**/

#include<fstream.h>
#include<string.h>

long A[100005],d,n;
char s[100005],cit[2];

ifstream fin("next.in");
ofstream fout("next.out");

long imparte()
{
	long t=0,i;
	for(i=1;i<=A[0];i++)
	{
		t=(t*10+A[i])%d;
	}
	return t;
}

int main()
{
	long i,rest,trec=0;

	fin.getline(s,100005);
       //	fin.getline(cit,2);
	fin>>d;
	n=strlen(s);

	for(i=n-1;i>=0;i--)
		A[++A[0]]=s[i]-'0';

	rest=imparte();

	i=1;
       //	rest=d-rest;
	while(rest!=0)
	{
		d=A[i]+trec+rest%10;
		A[i]=d%10;
		trec=d/10;
		i++;
		rest/=10;
	}
	if(trec!=0)
		A[i]+=trec;
		if(i>A[0]) A[0]=i;

	for(i=A[0];i>=1;i--)
		fout<<A[i];
	fout<<'\n';
	
	fout.close();
	return 0;
}