Pagini recente » Cod sursa (job #1818626) | Cod sursa (job #527851)
Cod sursa(job #527851)
#include <stdio.h>
#include <string>
#define maxn 1000050
#define ll long long
char aux[maxn];
ll D;
int i,N,v[maxn],rest;
void transf()
{
N=strlen(aux)-1;
for(i=1;i<=N;i++)
v[i]=aux[i]-'0';
}
int mod()
{
int r=0;
for(i=1;i<=N;i++)
r=(10*r+v[i])%D;
return r;
}
void adun(int x)
{
ll r=x;
for(i=N;i>=0 && (r>0 || i<N);i--)
{
v[i]=v[i]+r;
r=v[i]/10;
v[i]=v[i]%10;
}
if(v[0]>0)
{
N++;
for(i=N;i;i--)
v[i]=v[i-1];
}
}
void afisare()
{
for(i=1;i<=N;i++)
printf("%d",v[i]);
}
int main()
{
freopen("next.in","r",stdin);
freopen("next.out","w",stdout);
scanf("%s\n",aux+1); aux[0]=' ';
scanf("%lld",&D);
transf();
rest=mod();
adun((D-rest)%D);
afisare();
}