比赛 |
2008haoi模拟训练1 |
评测结果 |
AWWTWWWWWW |
题目名称 |
水管局长 |
最终得分 |
10 |
用户昵称 |
SMXX |
运行时间 |
4.395 s |
代码语言 |
Pascal |
内存使用 |
2.10 MiB |
提交时间 |
2008-04-22 11:20:13 |
显示代码纯文本
program tube;
var
f1,f2:text;
n,m,p,k,q,i,j,a,b:integer;
t:array[1..1000,1..1000]of integer;
function max(a,b:integer):integer;
begin
if a>b then max:=a
else max:=b;
end;
procedure find(x,y:integer);
var
k,i,j:integer;
begin
if p<>0 then begin
for k:= 1to n do
for i:= 1to n do
for j:= 1to n do
if (t[i,k]>0)and(t[k,j]>0) then
if max(t[i,k],t[k,j])<t[i,j] then t[i,j]:=max(t[i,k],t[k,i]);
p:=0;end;
writeln(f2,t[x,y]);
end;
begin
assign(f1,'tube.in');
assign(f2,'tube.out');
reset(f1);
rewrite(f2);
p:=0;
readln(f1,n,m,q);
for i:= 1to n do
for j:= 1to n do t[i,j]:=maxint;
for i:= 1to m do begin read(f1,a,b);readln(f1,t[a,b]);t[b,a]:=t[a,b];end;
for i:= 1to q do begin readln(f1,k,a,b);
if k=1 then find(a,b);
if k=2 then begin p:=1; t[a,b]:=maxint; end;end;
close (f1);
close(f2);
end.