description
某旅遊區的街道成網格狀(見圖),其中東西向的街道都是旅遊街,南北向的街道都是林蔭道。由於遊客眾多,旅遊街被規定為單行道。遊客在旅遊街上只能從西向東走,在林蔭道上既可以由南向北走,也可以從北向南走。阿隆想到這個旅遊區遊玩。他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路口之間的道路值得瀏覽得程度,分值從-100到100的整數,所有林蔭道不打分。所有分值不可能全是負值。
例如下圖是被打過分的某旅遊區的街道圖:
阿隆可以從任一路口開始瀏覽,在任一路口結束瀏覽。請你寫乙個程式,幫助阿隆尋找一條最佳的瀏覽路線,使得這條路線的所有分值總和最大。
input
第一行是兩個整數m和n,之間用乙個空格符隔開,m表示有多少條旅遊街(1≤m≤100),n表示有多少條林蔭道(1≤n≤20000)。接下裡的m行依次給出了由北向南每條旅遊街的分值資訊。每行有n-1個整數,依次表示了自西向東旅遊街每一小段的分值。同一行相鄰兩個數之間用乙個空格隔開。
output
只有一行,是乙個整數,表示你的程式找到的最佳瀏覽路線的總分值。
sample input36
50 –47 –36 –30 –23
17 –19
34 –13 –8
-42 –3
4334 -45
sample output
84題解:這道題可以用列舉的方法,讀入時判斷,最後輸出最大值。
var a:array[1..25000] of longint;
i,j,k,s,n,m,max:longint;
begin
readln(m,n);
for i:=1
to n-1
doread(a[i]);
for i:=2
to m do
for j:=1
to n-1
dobegin
read(k);
if k>a[j] then a[j]:=k;
end;
max:=-maxlongint;
i:=0;
repeat
inc(i);
if s+a[i]<0
then s:=0
else s:=s+a[i];
if s>max then max:=s;
until i>n-1;
writeln(max);
end.
C語言演算法設計之最佳遊覽路線問題
某旅遊景區的街道成網格狀。其中東西向的街道都是旅遊街,南北向的街道都是林蔭道。由於遊客眾多,旅遊街規定為單行道,遊客在旅遊街上只能從西向東走,在林蔭道上則既可從南向北,又可從北向南走。阿隆想到這個旅遊街區遊玩。他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路口之間的街道值得遊覽程度,分值是...
最佳旅遊路線
題目描述 某旅遊景區的街道成網格狀。其中東西向德街道都是旅遊街,南北向的街道都是林蔭道。由於遊客眾多,旅遊街規定為單行道,遊客在旅遊街上只能從西向東走,在林蔭道上則既可從南向北,又可從北向南走。阿龍想到這個旅遊街區遊玩。他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路口之間的街道值得遊覽程...
Adobe Flex最佳學習路線
adobe flex 最佳 學習 路線 2007 08 29 11 30 csdn 摘要 目前 adobe flex 的中文版學習資料比較少,而且大多都很零散,不適合用來系統地學習。我在這裡羅列一下在我的學習過程中讀過的一些資料。當然是以 adobe 的官方文件為主,這些文件內容非常詳盡,應該作為學...