比赛 20091019练习题 评测结果 AAAAAAAAAA
题目名称 奶牛跨栏 最终得分 100
用户昵称 rottenwood 运行时间 0.234 s
代码语言 Pascal 内存使用 0.81 MiB
提交时间 2009-10-19 20:54:11
显示代码纯文本
program hurdles;
var
map:array[1..300,1..300] of longint;
mis:array[1..40000,1..2] of longint;
i,j,k,m,n,ans,ti,si,ei,hi:longint;
function max(x,y:longint):longint;
begin
if x>y then max:=x
       else max:=y;
end;
begin
assign(input,'hurdles.in');reset(input);
assign(output,'hurdles.out');rewrite(output);
readln(n,m,ti);
for i:=1 to n do
 for j:=1 to n do
 map[i,j]:=-1;
for i:=1 to m do
begin
readln(si,ei,hi);
map[si,ei]:=hi;
end;
for i:=1 to ti do
readln(mis[i,1],mis[i,2]);
for k:=1 to n do
 for i:=1 to n do
  for j:=1 to n do
  begin
   if (map[i,k]<>-1)and(map[k,j]<>-1) then
   if (map[i,k]<map[i,j])and(map[k,j]<map[i,j])or(map[i,j]=-1) then map[i,j]:=max(map[i,k],map[k,j]);
  end;
for i:=1 to ti do
 writeln(map[mis[i,1],mis[i,2]]);
 end.