Pagini recente » Cod sursa (job #66393) | Cod sursa (job #2982609) | Cod sursa (job #2715334) | Cod sursa (job #701176) | Cod sursa (job #316536)
Cod sursa(job #316536)
#include<fstream.h>
//using namespace std;
ifstream f1 ("next.in");
ofstream f2 ("next.out");
int v2[1001],vf[1000001];
char v[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;}
void suma()
{
long long i, t = 0;
for (i=1; i<=vf[0] || i<=v2[0] || t; i++, t/=10)
{
if (i<=v2[0]) vf[i] = (t +=vf[i]+v2[i])%10;
else vf[i]=(t+=vf[i])%10;
}
vf[0]=i-1;
}
int main()
{
long long i,j;
long long d,t,x;
char c;
i=0;
while (f1.get(c) && int(c)>=48) {i++; v[i]=c;}
for (j=1; j<=i; j++) vf[j]=int(v[i-j+1])-48;
vf[0]=i;
f1>>d;
t=mod(vf,d);
t=(d-t)%d;
x=v[0];
i=0;
while (t!=0) {i++; v2[i]=t%10; t/=10;}
v2[0]=i;
suma();
for (i=vf[0]; i>=1; i--) f2<<vf[i];
return 0;
}