P2096 最佳旅遊線路

2021-07-28 03:53:11 字數 1303 閱讀 4300

某旅遊區的街道成網格狀。其中東西向的街道都是旅遊街,南北向的街道都是林**。由於遊客眾多,旅遊街被規定為單行道,遊客在旅遊街上只能從西向東走,在林**上則既可從南向北走,也可以從北向南走。

阿龍想到這個旅遊街遊玩,他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路口之見的街道值得遊覽的程度,分值是從-100到100的整數,所有林**不打分。所有分值不可能全是負分。如圖:

輸入格式:

輸入檔案的第一行是兩個整數m和n,之間用乙個空格隔開,m表示有m條旅遊街(1≤m≤100 ),n 表示有(n+1)條林**(1≤n≤20001 )。接下來的m行依次給出了由北向南每條旅遊街的分值資訊。每行有n個整數,依次表示了自西向東旅遊街每一小段的分值。同一行相鄰兩個數之間用乙個空格隔開。

輸出格式:

輸出檔案只有一行,是乙個整數,表示你的程式找到的最佳遊覽線路的總分值。

輸入樣例#1:

3 5 

-50 –47 36 –30 –23

17 –19 –34 –13 –8

-42 –3 –43 34 -45

公式:
k:=a[i]+k[i] or k+a[i]<0 then k:=0;
**如下:
var

max,i,j,k,n,m:longint;

a,f:array[-1..20000]of longint;

begin

readln(n,m);

for i:=1 to m do

begin

a[i]:=-maxint;

f[i]:=0;

end;

for i:=1 to n do

for j:=1 to m do

begin

read(k);

if k>a[j] then

a[j]:=k;

end;

k:=0;

max:=-maxlongint;

for i:=1 to m do

begin

if k+a[i]<0 then

k:=0

else

k:=k+a[i];

if k>max then

max:=k;

end;

writeln(max);

end.

輸出樣例#1:

84

luogu2096 最佳旅遊線路

時空限制 1000ms 128mb 某旅遊區的街道成網格狀。其中東西向的街道都是旅遊街,南北向的街道都是林 由於遊客眾多,旅遊街被規定為單行道,遊客在旅遊街上只能從西向東走,在林 上則既可從南向北走,也可以從北向南走。阿龍想到這個旅遊街遊玩,他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路...

最佳旅遊線路

題目描述 某旅遊區的街道成網格狀。其中東西向的街道都是旅遊街,南北向的街道都是林 由於遊客眾多,旅遊街被規定為單行道,遊客在旅遊街上只能從西向東走,在林 上則既可從南向北走,也可以從北向南走。阿龍想到這個旅遊街遊玩,他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路口之見的街道值得遊覽的程度...

3 旅遊線路

地球人,都知道。山越高越大,可 的景點就會越多,如果沒有一幅導遊圖,我們只能走到哪算哪了。linux核心的學習過程與爬山沒有什麼區別。對初次到此一遊者而言,這座山還是蠻高大的。不僅如此,各個路口或山頭要麼被茂密的枝葉所遮擋,要麼還有各種各樣雜亂無章的方向指示牌,在這種情況下,如果我們沒有任何輔助裝置...