Cod sursa(job #2157217)

Utilizator amarghescuAnton Marghescu amarghescu Data 9 martie 2018 13:25:45
Problema Next Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<cstdio>
#include<cstring>
char ch[1000005];
long long n;
short int v[1000005],v2[1000005];
int add(short int a[],short int b[]){
int i,t=0;
for(i=1;i<=n || i<=b[0] || t;i++){
a[i]=a[i]+b[i]+t;
t=a[i]/10;
a[i]=a[i]%10;}
n=i-1;}
int main(){
freopen("next.in","r",stdin);
freopen("next.out","w",stdout);
long long d,i;
fgets(ch+1,1000002,stdin);
scanf("%lld",&d);
n=strlen(ch+1);
n--;
for(i=n;i>=1;i--)
v[n-i+1]=ch[i]-'0';
long long r=0;
for(i=n;i>=1;i--)
r=(r*10+1LL*v[i])%d;
r=(d-r)%d;
while(r){
v2[++v2[0]]=r%10;
r=r/10;}
add(v,v2);
for(i=n;i>=1;i--)
printf("%d",v[i]);
return 0;}