Pagini recente » Cod sursa (job #1626398) | Cod sursa (job #490229) | Cod sursa (job #3255746) | Cod sursa (job #769110) | Cod sursa (job #279854)
Cod sursa(job #279854)
#include<iostream>
#include<stdio.h>
FILE *f=fopen("next.in","r"),*g=fopen("next.out","w");
void add(int A[], long long B)
{
int i;
long long t = B;
for (i=1; i<=A[0] || t; i++, t/=10)
A[i] = (t += A[i] ) % 10;
A[0] = i - 1;
}
long long mod(int A[], int B)
{
long long i, t = 0;
for (i = A[0]; i > 0; i--)
t = (t * 10 + A[i]) % B;
return t;
}
int main()
{
long long d,r,i,j=0;
int n[1000005];
char a[1000005];
fscanf(f,"%s%lld",a,&d);
n[0]=strlen(a);
for(i=n[0]-1;i>=0;i--)
{
n[++j]=a[i]-'0';
}
r=mod(n,d);
add(n,(d-r)%d);
for(i=n[0];i;i--)
fprintf(g,"%d",n[i]);
return 0;
}