給出兩個正整數A和B,計算A-B的值。保證A和B的位數不超過500位。
輸入描述 Input Description
讀入兩個用空格隔開的正整數
輸出描述 Output Description
輸出A-B的值
樣例輸入 Sample Input
3 12
樣例輸出 Sample Output
-9
數據範圍及提示 Data Size & Hint
兩個正整數的位數不超過500位
代碼:
var
a,b,c:array [0..500] of longint;
len,temp,i,j,k:longint;
flag:boolean;
s,s1,s2:ansistring;
begin
readln(s);
temp:=1;
for i:=1 to length(s) do
if s[i]<>' ' then
s1:=s1+s[i]
else
break;
for j:=i+1 to length(s) do
s2:=s2+s[j];
i:=length(s1);
j:=length(s2);
if i>j then
begin
len:=i;
flag:=true;
end
else
begin
len:=j;
flag:=false;
end;
for k:=len downto 1 do
begin
if i>0 then
begin
a[k]:=ord(s1[i])-48;
dec(i);
end
else
a[k]:=0;
if j>0 then
begin
b[k]:=ord(s2[j])-48;
dec(j);
end
else
b[k]:=0;
if flag then
c[k]:=a[k]-b[k]
else
c[k]:=b[k]-a[k];
end;
for k:=len downto 1 do
if c[k]<0 then
begin
c[k]:=c[k]+10;
dec(c[k-1]);
end;
if not flag then
write('-');
for k:=1 to len do
if c[k]=0 then
inc(temp)
else
break;
for k:=temp to len do
write(c[k]);
end.