描述
如圖所示,有乙個群島,共分為若干層,第1層有乙個島嶼,第2層有2個島嶼,......,第n層有n個島嶼。每個島上都有一塊寶,其價值是乙個正整數(圖中圓圈中的整數)。尋寶者只允許從第一層的島嶼進入,從第n層的島嶼退出,不能後退,他能收集他所經過的所有島嶼上的寶貝。但是,從第i層的島嶼進入第i+1層的島嶼時,有且僅有有2條路徑。你的任務是:對於給定的群島和島上寶貝的價值,計算乙個拾寶者行走一趟所能收集寶貝的最大價值。
第一行是乙個整數n,在[2,20]之間,表示要輸入的案例的數量。後面緊跟n個案例。對每個案例,第一行是乙個整數mi,在[2, 50]之間,表示該案例中島嶼的層數,後面緊跟mi*(mi+1)/2行,每行有1個整數,表示響應的島嶼上寶貝的價值,每個數值的範圍是[1, 1000]。注意:如果mi是4,而後面緊跟的10行的元素分別是5, 2, 1, 4, 7, 9, 4, 2, 3, 5,則表示第一層的資料是5;第2層的資料是2, 1;第3層的資料是4, 7, 9;第4層的資料是4, 2, 3, 5。
輸出 對每乙個案例,用一行輸出乙個整數,表示輸出拾寶者所能收集寶貝的最大價值。
樣例輸入1
複製
245樣例輸出12147
9223
5212
3
20數塔問題!再來溫習一下,和之前方法也不太一樣...4
動態規劃,儲存資料,比較
#include #include using namespace std;
int n,a[60][60],d[60][60];//乙個用來儲存原始的數塔資料,乙個用來儲存動態規劃的。
int main()
//輸入資料
for (i=1;i<=n; i++)
d[n][i] = a[n][i]; //令底層全部等於初始
for (i=n-1; i>=1; i--)
for (j=1; j<= i; j++)
cout下面是標程:
#include#includeusing namespace std;
int main()
return 0;
}
問題求解與程式設計 實驗四 C食堂排隊
描述 某日,食堂視窗推出一款新美食,每個班的同學都想去嚐一嚐。於是,很多人都去這個視窗排隊,但是,隊伍中如果同班同學相鄰站著的話,他們就只需要乙個人排在隊伍中就行了。例如某次隊伍情況 12221133345678899,那麼就會變成一條新的隊伍 1213456789。輸入 輸入有多組資料,對於每組資...
問題求解與程式設計
問題提出時,想要利用計算機進行求解,而一般計算機不會分析問題並直接給出解決問題的方案,故我們個人需要分析問題並給出問題的解決方案,再將其描述成計算機能識別的指令 程式 讓計算機進行複雜處理,最終得到問題結果,在這一過程中,計算機確起著非常重要的作用,但是要是沒有前面的一系列步驟,也不能解決問題 程式...
問題求解與程式設計 實驗二 G 大數A B
描述 大家都做個好多a b系列的題目,今天來點新鮮的a b題目。輸入 輸入有多組。每一組資料佔一行。每行有兩個整數,中間用空格隔開。其中整數範圍為 0,10 100 輸出 每組輸出佔一行。具體格式見樣例。樣例輸入11 2 112233445566778899 998877665544332211 樣...