某旅遊區的街道成網格狀,其中東西向的街道都是旅遊街,南北向的街道都是林蔭道。由於遊客眾多,旅遊街被規定為單行道。遊客在旅遊街上只能從西向東走,在林蔭道上既可以由南向北走,也可以從北向南走。阿隆想到這個旅遊區遊玩。他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路口之間的道路值得瀏覽得程度,分值從-100到100的整數,所有林蔭道不打分。所有分值不可能全是負值。
阿隆可以從任一路口開始瀏覽,在任一路口結束瀏覽。請你寫乙個程式,幫助阿隆尋找一條最佳的瀏覽路線,使得這條路線的所有分值總和最大。
第一行是兩個整數m和n,之間用乙個空格符隔開,m表示有多少條旅遊街(1≤m≤100),n表示有多少條林蔭道(1≤n≤20000)。接下裡的m行依次給出了由北向南每條旅遊街的分值資訊。每行有n-1個整數,依次表示了自西向東旅遊街每一小段的分值。同一行相鄰兩個數之間用乙個空格隔開。
只有一行,是乙個整數,表示你的程式找到的最佳瀏覽路線的總分值。
先讀入每乙個分值,並記錄先來,再求出每一列最大的分值,最後就是等於求最大連續數列之和了。
#include
#include
using
namespace std;
int sum=
0,a[
101]
[20001
],f[
101]
[20001
],n,m;
intmain()
for(
int i=
2;i<=m;i++
)for
(int j=
1;j<=n-
1;j++
) f[i]
[j]=
max(f[i]
[j],f[i-1]
[j])
;//求出每一列分值最大的一點
int i=m;
for(
int j=
1;j<=n-
1;j++
)printf
("%d"
,sum)
;return0;
}
DP 最佳瀏覽路線問題
某旅遊區的街道成網格狀。其中東西向的街道都是旅遊街,南北向的街道都是林 由於遊客眾多,旅遊街被規定為單行道,遊客在旅遊街上只能從西向東走,在林 上則既可從南向北走,也可以從北向南走。阿龍想到這個旅遊街遊玩,他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路口之見的街道值得遊覽的程度,分值是從...
最佳瀏覽路線問題
最佳瀏覽路線問題。某旅遊區的街道成網格狀 如右圖 其中東西向的街道都是旅遊街,南北向的街道都是林蔭道。由於遊客眾多,旅遊街被規定為單行道。遊客在旅遊街上只能從西向東走,在林蔭道上既可以由南向北走,也可以從北向南走。阿隆想到這個旅遊區遊玩。他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路口之...
最佳瀏覽路線問題 貪心
題目描述 某旅遊區的街道成網格狀 見圖 其中東西向的街道都是旅遊街,南北向的街道都是林蔭道。由於遊客眾多,旅遊街被規定為單行道。遊客在旅遊街上只能從西向東走,在林蔭道上既可以由南向北走,也可以從北向南走。阿隆想到這個旅遊區遊玩。他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路口之間的道路值...