Pagini recente » Cod sursa (job #2210244) | Monitorul de evaluare | Cod sursa (job #2292914) | Cod sursa (job #677046) | Cod sursa (job #1052046)
#include <cstring>
#include <fstream>
using namespace std;
ifstream fin("next.in");
ofstream fout("next.out");
typedef long long i64;
const int base= 10;
const int nmax= 1000000;
char s[nmax+1];
int v[nmax+1];
int main( ) {
fin>>s;
int n= strlen(s);
for ( int i= 1; i<=n; ++i ) {
v[n-i+1]= (int)s[i-1]-'0';
}
i64 d, t= 0;
fin>>d;
for ( int i= n; i>0; --i ) {
t= (t*base+v[i])%d;
}
t= (d-t)%d;
for ( int i= 1; i<=n || t>0; ++i ) {
if ( i>n ) {
++n;
}
v[i]+= t;
t= v[i]/base;
v[i]%= base;
}
for ( int i= n; i>0; --i ) {
fout<<v[i];
}
fout<<"\n";
return 0;
}