Pagini recente » Cod sursa (job #2695372) | Cod sursa (job #2174547) | Cod sursa (job #2901906) | Cod sursa (job #1533302) | Cod sursa (job #38829)
Cod sursa(job #38829)
#include <stdio.h>
#include <string.h>
int main(){
freopen("next.in","r",stdin);
freopen("next.out","w",stdout);
long long d,i,l,r,nr,j,rest,a;
char ch[1000001];
scanf("%s",ch);
scanf("%I64d",&d);
//printf("%I64d",d);
nr=0;
l=strlen(ch);
if (l<=17)for (i=0;i<l;i++)nr=nr*10+ch[i]-'0';
if ((nr&&nr>d)||l>17){
r=0;j=-1;
while (r<d){
j++;
r=r*10+ch[j]-'0';
}
r=r%d;
while (j<l-1){
j++;
r=r*10+ch[j]-'0';
r=r%d;
}
rest=0;
if (r){
r=d-r;
for (i=l-1;i>=0;i--){
a=ch[i]-'0';
a+=rest;
if (r){a+=r%10;r=r/10;}
rest=a/10;
a=a%10;
ch[i]='0'+a;
}
}
if (rest)printf("%I64d",rest);
printf("%s\n",ch);
}
else printf("%I64d\n",d);
return 0;
}