a,b:int64;
x:qword;
begin
if a<b then
begin
write(-);
x:=b-a;
end
else x:=a-b;
20行
我部分用高精.
60行...
ps,
gaoxin的程序貌似不行吧?
如果a-b,a=+max,b=-max,怎么办?
var
a, b, c: qword;
aa, bb: int64;
p, S: ansistring;
flag: boolean;
begin
readln(aa, bb);
a := abs(aa);
b := abs(bb);
if aa < 0 then
if bb > 0 then
begin
c := a + b;
flag := true
end
else
begin
if b > a then
begin
flag := false;
c := b - a
end
else
begin
flag := true;
c := a - b
end
end
else
if bb < 0 then
begin
c := a + b;
flag := false
end
else
begin
if a > b then
begin
flag := false;
c := a - b
end
else
begin
flag := true;
c := b - a
end
end;
S := ;
while c > 0 do
begin
str(c mod 1000, p);
c := c div 1000;
if c > 0 then
if length(p) = 1 then
p := 00 + p
else if length(p) = 2 then
p := 0 + p;
if S = then
S := p
else
S := p + , + S
end;
if S = then
S := 0
else if flag then
S := - + S;
writeln(S)
end.