Pagini recente » Cod sursa (job #1702162) | Rating Moisa Andrei-Razvan (Andrei_M2000) | Istoria paginii runda/mere/clasament | Cod sursa (job #2394181) | Cod sursa (job #328866)
Cod sursa(job #328866)
#include<stdio.h>
char c[1000003];
int a[1000003],i,j,n,b[1000];
long long d,r;
int mod(int A[], long long B)
{
long long i, t = 0;
for (i = A[0]; i > 0; i--)
t = (t * 10 + A[i]) % B;
return t;
}
void add(int A[], int B[])
{
int i, t = 0;
for (i=1; i<=A[0] || i<=B[0] || t; i++, t/=10)
A[i] = (t += A[i] + B[i]) % 10;
A[0] = i - 1;
}
int main()
{
freopen("next.in","r",stdin);
freopen("next.out","w",stdout);
for(i=1;c[i-1]!=10;i++) scanf("%c",&c[i]);
i--;
i--;
n=i;
for(i=n;i>=1;--i) a[++a[0]]=c[i]-48;
scanf("%lld",&d);
r=mod(a,d);
d=d-r;
while(d) { b[++b[0]]=d%10;
d/=10;
}
add(a,b);
for(i=a[0];i>=1;--i) printf("%d",a[i]);
printf("\n");
fclose(stdin);
fclose(stdout);
return 0;
}