Pagini recente » Cod sursa (job #2133844) | Cod sursa (job #132034) | Cod sursa (job #1151269) | Cod sursa (job #1273498) | Cod sursa (job #37564)
Cod sursa(job #37564)
#include <stdio.h>
#include <string.h>
char s[1000001];
int a[1000001], b[20];
int l,i;
long long m,d;
void add()
{
int i, q, t = 0;
for (i=1; i<=a[0] || i<=b[0] || t; i++, t/=10)
{
if (i>b[0]) q=0; else q=b[i];
a[i] = (t += a[i] + q) % 10;
}
a[0] = i - 1;
}
void mod()
{
int i;
for (i = a[0]; i > 0; --i)
m = (m * 10 + a[i]) % d;
}
int main()
{
freopen("next.in","r",stdin);
freopen("next.out","w",stdout);
scanf("%s",&s);
scanf("%lld",&d);
l=strlen(s);
a[0]=l;
for (i=0; i<l; ++i) a[l-i]=s[i]-'0';
mod();
m=d-m;
i=0;
while (m>0)
{
b[++i]=m%10;
m/=10;
}
b[0]=i;
add();
for (i=a[0]; i>0; --i) printf("%d",a[i]);
printf("\n");
return 0;
}