城市交通 SSL 1636

2021-07-27 11:04:44 字數 1325 閱讀 3727

description 

有n個城市,編號1~n,有些城市之間有路相連,有些則沒有,有路則當然有乙個距離。現在規定只能從編號小的城市到編號大的城市,問你從編號為1的城市到編號為n的城市之間的最短距離是多少?

input

先輸入乙個n,表示城市數,n小於100。

下面的n行是乙個n*n的鄰接矩陣map[i,j],其中map[i,j]=0表示城市i和城市j之間沒有路相連,否則為兩者之間的距離。

output

輸出格式:乙個數,表示最少要多少時間。

輸入資料保證可以從城市1飛到城市n。

sample input 110

5300

0000

0050

0163

0000

0300

0804

0000

0100

0005

6000

6800

0050

0003

0000

0008

0004

0000

0030

0005

5000

0030

0060

0000

0400

0008

3000

3000

0000

3430

sample output

13題解:這道題可以用逆推,用dis[j]表示階段j到i的城市,再跟min比較,輸出結果

逆推:const maxn=100;

var d:array[1..maxn] of longint;

m:array[1..maxn,1..maxn] of longint;

n,i,j,min:longint;

begin

readln(n);

for i:=1

to n do

begin

for j:=1

to n do

read(m[i,j]);

readln;

end;

d[1]:=0;

for i:=2

to n do

begin

min:=maxint;

for j:=1

to i-1

doif m[j,i]<>0

then

if d[j]+m[j,i]then min:=d[j]+m[j,i];

d[i]:=min;

end;

write(min);

end.

SSL 1636 城市交通(DP kyx

有n個城市,編號1 n,有些城市之間有路相連,有些則沒有,有路則當然有乙個距離。現在規定只能從編號小的城市到編號大的城市,問你從編號為1的城市到編號為n的城市之間的最短距離是多少?先輸入乙個n,表示城市數,n小於100。下面的n行是乙個n n的鄰接矩陣map i,j 其中map i,j 0表示城市i...

SSL 城市交通

有n個城市,編號1 n,有些城市之間有路相連,有些則沒有,有路則當然有乙個距離。現在規定只能從編號小的城市到編號大的城市,問你從編號為1的城市到編號為n的城市之間的最短距離是多少?先輸入乙個n,表示城市數,n小於100。下面的n行是乙個n n的鄰接矩陣map i,j 其中map i,j 0表示城市i...

深搜 城市交通

由於牛奶市場的需求,奶牛必須前往城市,但是唯一可用的交通工具是計程車 教會奶牛如何在城市裡打的 給出乙個城市地圖,東西街區e 1 e 40 南北街區n 1 n 30 製作乙個開車指南給計程車司機,告訴他如何從起點 用s表示 到終點 用e表示 每乙個條目用空格分成兩部分,第乙個部分是方向 n,e,s,...