Pagini recente » Cod sursa (job #2182978) | Cod sursa (job #450985) | Cod sursa (job #316701) | Cod sursa (job #178707) | Cod sursa (job #315892)
Cod sursa(job #315892)
#include<fstream>
using namespace std;
ifstream f1 ("next.in");
ofstream f2 ("next.out");
int v[1000001],v2[20],vf[1000001];
long long mod(int vf[1000001], long long b)
{
long long i;
long long t = 0;
for (i = vf[0]; i>0; i--)
t = (t*10 + vf[i]) % b;
return t;
}
int main()
{
long long i,t2;
long long d,t;
char c;
i=0;
while (f1.get(c) && int(c)>=48) {i++; v[i]=int(c)-48;}
v[0]=i;
for (i=1; i<=v[0]; i++) vf[i]=v[v[0]-i+1];
vf[0]=v[0];
f1>>d;
t=mod(vf,d);
t=(d-t)%d;
i=1;
while (t!=0) {v2[i]=t%10; t/=10; i++;}
v2[0]=i-1;
t2=0;
for (i=1; i<=vf[0] || i<=v2[0] || t2; i++, t2/=10)
vf[i] = (t2 += vf [i] + v2[i]) % 10;
vf[0]=i-1;
for (i=vf[0]; i>=1; i--) f2<<vf[i];
return 0;
}