Cod sursa(job #2102999)

Utilizator AndaionicaIonica Anda Maria Andaionica Data 9 ianuarie 2018 18:11:05
Problema Next Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <fstream>
#include <string.h>
using namespace std;
ifstream f("next.in");
ofstream g("next.out");
int n,v[1000001],k2,k1,i;
long long d,r;
char s[1000001];
int main()
{
    f>>s;
    f>>d;
    n=strlen(s);
    for(i=0;i<n;i++){
        v[i]=s[i]-'0';
        r=(r*10+v[i])%d;
    }
    r=d-r;
    int ok=1;
    for(i=n-1;i>=0;i--){
        k2=(v[i]+k1+r%10)/10;
        v[i]=(v[i]+k1+r%10)%10;
        k1=k2;
        r/=10;
        if(ok==0)
            break;
        if(r==0)
            ok=0;
    }
    if(k1>0)
        g<<k1;
    for(i=0;i<n;i++)
        g<<v[i];
    return 0;
}