Pagini recente » Cod sursa (job #355960) | Cod sursa (job #1715533) | Cod sursa (job #783825) | Cod sursa (job #2223720) | Cod sursa (job #38990)
Cod sursa(job #38990)
const maxn = 1000001;
type huge = array[0..maxn]of longint;
var f:text;
n:huge;
i,j,x:longint;
c:char;
d,r:int64;
procedure readdata;
begin
assign(f,'next.in');
reset(f);
n[0]:=0;
while not eoln(f) do
begin
read(f,c);
inc(n[0]);
n[n[0]]:=ord(c)-48;
end;
readln(f,d);
close(f);
end;
procedure modul;
begin
for i:=n[0] downto 1 do
begin
r:=(10*r+n[i]) mod d;
end;
end;
procedure add;
begin
r:=0;
for i:=1 to n[0] do
begin
x:=n[i]+(j mod 10)+r;
n[i]:=x mod 10;
r:=x div 10;
j:=j div 10;
end;
if r=1 then
begin
inc(n[0]);
n[n[0]]:=1;
end;
end;
procedure solve;
begin
for i:=1 to n[0] div 2 do
begin
j:=n[i];
n[i]:=n[n[0]-i+1];
n[n[0]-i+1]:=j;
end;
modul;
if r=0 then exit;
j:=d-r;
add;
end;
procedure writedata;
begin
assign(f,'next.out');
rewrite(f);
for i:=n[0] downto 1 do
begin
write(f,n[i]);
end;
close(f);
end;
begin
readdata;
solve;
writedata;
end.