level 1
const n=5000;
var
str1,str2,str:ansistring;
a,b:array[1..n]of integer;
len1,len2,len,i,j:integer;
tf:boolean;
begin
readln(str1); readln(str2);
len1:=length(str1); len2:=length(str2);
if str1=str2 then
begin
write('0');
halt;
end;
if len1>len2 then
tf:=true
else
if len1<len2 then
tf:=false
else
begin
i:=1; tf:=true; len:=len1;
while (len>0) and tf do
begin
if str1[i]>str2[i] then break;
if str1[i]<str2[i] then
begin
tf:=false;
break;
end;
inc(i); dec(len);
end;
end;
if not tf then
begin
str:=str1; str1:=str2; str2:=str;
len:=len1; len1:=len2; len2:=len;
end;
for i:=1 to len1 do a[i]:=ord(str1[len1-i+1])-48;
for i:=1 to len2 do b[i]:=ord(str2[len1-i+1])-48;
for i:=1 to len1 do
begin
if a[i]<b[i] then
begin
dec(a[i+1]);
inc(a[i],10);
end;
dec(a[i],b[i]);
end;
while a[len1]=0 do dec(len1);
if not tf then write('-');
for i:=len1 downto 1 do write(a[i]);
readln;
end.
2013年11月21日 14点11分