Cod sursa(job #1711490)

Utilizator Bodo171Bogdan Pop Bodo171 Data 31 mai 2016 13:49:55
Problema Next Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <iostream>
#include<fstream>
#include<string>
using namespace std;
string s;
unsigned long long dix,ad,d,x,c;
int v[1000005],fix,i;
int main()
{
    ifstream f("next.in");
    ofstream g("next.out");
    f>>s;
    f>>d;
    fix=s.size()-1;
    for(i=0;i<=fix;i++)
        v[fix-i+1]=s[i]-'0';
        dix=1;ad=0;
        fix+=1;
    for(i=1;i<=fix;i++)
    {
        ad=(ad+(dix*v[i])%d)%d;
        dix*=10;dix%=d;
    }
    i=1;
    ad=d-ad;
    if(ad!=d)
    while(ad!=0)
    {
        c=ad%10;
        ad/=10;
        x=c+v[i];
        if(x>=10) {v[i]=x%10;v[i+1]++;if(i+1>fix) fix=i+1;}
        else v[i]=x;
        if(i>fix) fix=i;
        i++;
    }
    for(i=fix;i>=1;i--) g<<v[i];
    return 0;
}