Cod sursa(job #1074606)

Utilizator roxannemafteiuMafteiu-Scai Roxana roxannemafteiu Data 7 ianuarie 2014 19:35:44
Problema Next Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define cmax 1000050
int n[cmax],i;
long long d;
char s[cmax];
void divide()
{
    long long x=0;
    for (i=n[0];i>0;i--)
    {
        x=x*10+n[i];
        x%=d;
    }
    if (x)
    {
        x=d-x;
        i=1;
        while (x)
            x+=n[i],n[i]=x%10,x/=10,++i;
        if (i>n[0])
            n[0]=i-1;
    }
}
int main()
{
    freopen("next.in","r",stdin);
    freopen("next.out","w",stdout);

    scanf("%s%lld",s,&d);
    n[0]=strlen(s);
    for (i=0;i<n[0];i++)
        n[i+1]=s[n[0]-i-1]-'0';
    divide();
    for (i=n[0];i>0;i--)
        printf("%d",n[i]);
    printf("\n");
    return 0;
}