Cod sursa(job #2230393)

Utilizator patcasrarespatcas rares danut patcasrares Data 9 august 2018 22:40:48
Problema Next Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include<fstream>
#include<iostream>
#include<cstring>
#define DN 2000005
using namespace std;
ifstream fin("next.in");
ofstream fout("next.out");
int n,a[DN];
long long d,s;
char b[DN];
void aduna()
{
    long long t=s;
    for(int i=1;i<=a[0];i++)
    {
        t=t+a[i];
        a[i]=t%10;
        t=t/10;
    }
    while(t)
    {
        a[0]++;
        a[a[0]]=t%10;
        t=t/10;
    }
}
int main()
{
    fin.getline(b+1,DN);
    a[0]=strlen(b+1);
    for(int i=1;i<=a[0];i++)
        a[a[0]-i+1]=b[i]-'0';
    fin>>d;
    s=0;
    for(int i=1;i<=a[0];i++)
        s=(s*10+b[i]-'0')%d;
    s=(d-s)%d;
    aduna();
    for(int i=a[0];i>0;i--)
        fout<<a[i];
}