Pagini recente » Cod sursa (job #283073) | Cod sursa (job #1174427) | Cod sursa (job #2842400) | Cod sursa (job #1247427) | Cod sursa (job #1618454)
#include <iostream>
#include <stdio.h>
using namespace std;
long long dim;
char cif[1000004];
char t[20];
long long mod(long long a) {
long long i,t = 0;
for(i = dim-1; i >= 0; i--)
t = (t*10 + cif[i])%a;
return t;
}
void add(long long a) {
long long t = 0;
for(int i = 0; a > 0 || t != 0; i++) {
if(i > dim)
dim++;
cif[i] += a%10+t;
t = cif[i]/10;
cif[i] %= 10;
a /= 10;
}
}
int main() {
FILE *fin = fopen("next.in", "r");
FILE *fout = fopen("next.out", "w");
long long d = 0;
char c;
fgets(cif, 1000004, fin);
while(isdigit(cif[dim]))
cif[dim] = cif[dim++] - '0';
for(int i = 0; i < dim/2; i++)
swap(cif[i], cif[dim-i-1]);
int k = 0;
fgets(t, 20, fin);
while(isdigit(t[k]))
d = d*10 + t[k++] - '0';
long long r = mod(d);
add((d-r)%d);
for(int i = dim-1; i >= 0; i--)
fprintf(fout, "%d", (int)cif[i]);
return 0;
}