Pagini recente » Cod sursa (job #1837484) | Cod sursa (job #1472593) | Cod sursa (job #2441570) | Cod sursa (job #1910347) | Cod sursa (job #214879)
Cod sursa(job #214879)
/**/
#include<fstream.h>
#include<string.h>
long A[1000005],n;
char sir[100005][260];
long long d,rest;
ifstream fin("next.in");
ofstream fout("next.out");
void citire()
{
long i=0,j;
while(fin.getline(sir[i],260))
i++;
n=i-1;
for(i=n-1;i>=0;i--)
for(j=strlen(sir[i])-1;j>=0;j--)
A[++A[0]]=sir[i][j]-'0';
for(i=0;i<strlen(sir[n]);i++)
d=d*10+sir[n][i]-'0';
}
long imparte()
{
long t=0,i;
for(i=A[0];i>0;i--)
{
t=(t*10+A[i])%d;
}
return t;
}
int main()
{
long i,trec=0,z;
/* fin.getline(s,1000005);
fin.getline(s1,20);
// fin>>d;
n=strlen(s);
for(i=n-1;i>=0;i--)
A[++A[0]]=s[i]-'0';
n=strlen(s1);
for(i=0;i<n;i++)
d=d*10+s1[i]-'0';
*/
citire();
rest=imparte();
i=1;
rest=d-rest;
while(rest!=0)
{
z=A[i]+trec+rest%10;
A[i]=z%10;
trec=z/10;
i++;
rest/=10;
}
if(trec!=0)
A[i]+=trec;
while(A[i]>9)
{
trec=A[i]/10;
A[i]=A[i]%10;
A[i+1]=A[i+1]+trec;
i++;
}
if(i>A[0]) A[0]=i;
while(A[A[0]]==0)
A[0]--;
for(i=A[0];i>=1;i--)
fout<<A[i];
fout<<'\n';
fout.close();
return 0;
}