Pagini recente » Cod sursa (job #2939774) | Cod sursa (job #1425479) | Cod sursa (job #372165) | Cod sursa (job #307886) | Cod sursa (job #3287292)
#include <fstream>
using namespace std;
ifstream in("next.in");
ofstream out("next.out");
const int maxdigits = 1000000;
typedef int Bigg[maxdigits + 2];
int64_t Div(Bigg x, int64_t div){
int64_t r = 0;
for(int i = x[0]; i >= 1; i--)
r = 10 * r + x[i], x[i] = r / div, r %= div;
for(; x[0] > 1 && x[x[0]] == 0; x[0]--);
return r;
}
void Multiply(Bigg x, int64_t m){
int64_t t = 0;
for(int i = 1; i <= x[0]; i++, t /= 10)
t += x[i] * m, x[i] = t % 10;
for(; t; x[++x[0]] = t % 10, t /= 10);
}
void Show(Bigg x){
for(int i = x[0]; i >= 1; i--)
out<<x[i]; out<<"\n";
}
int64_t d, r;
string s;
Bigg n;
int main(){
in>>s>>d;
for(int it = 0; it < s.size(); it++)
n[s.size() - it] = s[it] - '0';
n[0] = s.size();
r = Div(n, d);
n[1] += (!!r);
Multiply(n, d);
Show(n);
return 0;
}