Pagini recente » Cod sursa (job #621142) | Cod sursa (job #767192) | Cod sursa (job #235797) | Clasament drjn | Cod sursa (job #1687898)
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
char s[1000105];
int a[1000105];
long long modulo(long long d)
{
int r=0,i;
for(i=a[0]; i>=1; i--)
r=(r*10+a[i])%d;
return r;
}
int adun(long long x)
{
int i,tr=0,aux;
for(i=1; i<=a[0]; i++)
{
a[i]=a[i]+x%10;
x=x/10;
}
for(i=1; i<=a[0]; i++)
{
aux=a[i]+tr;
a[i]=aux%10;
tr=aux/10;
}
while(a[a[0]])
a[0]++;
a[0]--;
}
int main()
{
freopen("next.in","r",stdin);
freopen("next.out","w",stdout);
int i,n;
long long d,r;
gets(s);
n=strlen(s);
reverse(s,s+n);
for(i=0; i<n; i++)
a[i+1]=s[i]-'0';
a[0]=n;
scanf("%lld",&d);
r=modulo(d);
r=d-r;
if(r==d)
r=0;
adun(r);
for(i=a[0]; i>=1; i--)
printf("%d",a[i]);
return 0;
}