SSL P1760 商店选址问题

16 篇文章 0 订阅

Description

给出一个城市的地图(用邻接矩阵表示),商店设在一点,使各个地方到商店距离之和最短。

Input

第一行为n(共有几个城市); N小于201
第二行至第n+1行为城市地图(用邻接矩阵表示);

Output

最短路径之和;

Sample Input

3
0 3 1
3 0 2
1 2 0
Sample Output

3

先floyd,然后判断找最小即可。

var
   f:array [0..201,0..201] of longint;
   i,j,k,n,ans,min:longint;
begin
     readln(n);
     for i:=1 to n do
         begin
            for j:=1 to n do read(f[i,j]);
            readln;
         end;
     for k:=1 to n do
         for i:=1 to n do
             for j:=1 to n do
                 if f[i,k]+f[k,j]<f[i,j] then
                       f[i,j]:=f[i,k]+f[k,j];
     min:=maxlongint;
     for i:=1 to n do
         begin
            ans:=0;
            for j:=1 to n do ans:=ans+f[i,j];
            if ans<min then min:=ans;
         end;
     writeln(min);
end.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值