比赛 |
20101224 |
评测结果 |
EEEEEEEEEE |
题目名称 |
最佳地点 |
最终得分 |
0 |
用户昵称 |
绝对零度 |
运行时间 |
0.000 s |
代码语言 |
Pascal |
内存使用 |
0.00 MiB |
提交时间 |
2010-12-24 19:56:39 |
显示代码纯文本
program bestspot(input,output);
var a:array[1..500,1..500] of longint;
d:array[1..500] of longint;
i,j,k,l,m,n,p,f,c:longint;
begin
assign(input,'cbestspot.in');
reset(input);
assign(output,'bestspot.out');
rewrite(output);
readln(p,f,c);
for i:=1 to p do
for j:=1 to p do
if i=j then a[i,j]:=0 else a[i,j]:=100000;
for i:=1 to f do
readln(d[i]);
for i:=1 to c do
begin
readln(l,m,n);
a[l,m]:=n;
a[m,l]:=n;
end;
for i:=1 to p do
for j:=1 to p do
for k:=1 to p do
if (i<>j) and (j<>k) and (k<>i) then
if ((a[i,k]+a[k,j])<a[i,j]) then
begin
a[i,j]:=a[i,k]+a[k,j];
a[j,i]:=a[i,k]+a[k,j];
end;
m:=0;
k:=1000000;
l:=0;
for i:=1 to p do
begin
l:=0;
for j:=1 to f do
inc(l,a[i,d[j]]);
if l<k then begin k:=l; m:=i end
end;
writeln(m);
close(input);
close(output);
end.