Cod sursa(job #3366777)

Utilizator Maya_PopaPopa Maya Diana Maya_Popa Data 4 octombrie 2026 11:45:22
Problema Next Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <iostream>
#include <fstream>
#include <string>

using namespace std;
ifstream fin ("next.in");
ofstream fout ("next.out");
long long impartire(const string& n, long long d) {
    long long t=0;
    for (char i : n) {
        t=(t*10+(i-'0'))%d;
    }
    return t;
}
string adunare(string n, long long val) {
    long long t=val;
    for (int i=n.length()-1; i>=0; i--) {
        if (t>0) {
            long long curr=(n[i]-'0')+t;
            n[i]=(curr%10)+'0';
            t=curr/10;
        }
    }
    if (t>0) {
        n=to_string(t)+n;
    }
    return n;
}
int main() {

    string n;
    long long d,r,dif;
    fin>>n>>d;
    r=impartire(n, d);
    if (r==0) {
        fout<<n<<endl;
    } else {
        dif=d-r;
        string sol=adunare(n, dif);
        fout<<sol<<endl;
    }
    return 0;
}