d-最大的收益
時間限制:c/c++ 1秒,其他語言2秒
空間限制:c/c++ 262144k,其他語言524288k
64bit io format: %lld
題目描述
一天,上課的時候小l老師帶來一些食物,要把它分給同學們品嚐,於是這些食物被分成了n堆。每一堆都給它標註了乙個價值。
小l老師就問同學們如何選擇品嚐的順序使得品嚐的價值之和最大。聰明的你立馬就想到了把所有的食物品嚐一遍價值和就是最大。
這時小l老師立馬加了乙個規矩不能品嚐相鄰的兩種食物,例如食物a b c依次擺放著桌子上,當你品嚐了食物a 你就不能品嚐食物b。
下乙個品嚐的食物只能是c。當你品嚐了食物b,你就不能品嚐食物c,同時也不能品嚐食物a。聰明的你知道如何選擇使得你從左到
右選擇品嚐的食物的價值最大嘛!最大的價值是多少。
輸入描述:
第一行乙個整數t(1≤t≤500),表示共有t組測試資料。
對於每組資料,第一次乙個數字n(1≤n≤1000)表示有n堆食物接下來一行有n個數,分別表示每堆食物的價值ai (0≤ai≤100).
輸出描述:
輸出乙個整數代表所能獲得的最大價值
示例1
輸入24
1 2 3 4
32 3 0
輸出6
3說明
樣例一 選擇品嚐第二個和第四個食物獲得的價值總和最大為6
思路:dp,在第i個位置有倆種選擇,取,不取,取的話,那第i-1個就不能取 ,因此總價值就是dp[i-2] + a[i],不取的話,總價值就是dp[i-1]
以下是ac**:
#include
#include
using
namespace std;
int a[
1010];
int dp[
1010];
intmain()
dp[0]
=0; dp[1]
= a[1]
;for
(int i =
2; i <= n; i++
) cout<<}return0;
}
台州學院第五屆大學生程式設計競賽
扔硬幣 solve the equation mfa algorithm circle vs 電腦密碼 the key locker of cell phone number maze 修路問題 浪漫自習 最大流ek 可以過 取乙個源點0 建一條邊 0 1 容量為m 情侶的對數 如果最大流等於m 就...
第五屆ACM趣味程式設計大賽
a 苗童大作戰之絕地求生 苗苗最近入坑絕地求生了,這一次她終於苟到了決賽圈,她已經把藥都用完了,但馬上又要跑毒了。假設她距離安全區最近的直線距離為 n 公尺,她的移動速度為 2 公尺每秒,她想知道如果按照這個方式跑到安全區最需要多少秒。輸入包含乙個整數 n 0 n 10000 代表她到安全區的距離。...
武漢大學第五屆E鳴杯程式設計大賽 部分解題報告。
1000 極度坑爹啊,誰都沒想到會是普通的加法。大整數肯定能過。呵呵a b 1001 題目也說了從大到小輸出可是一排序就不對,最後聽他們誰沒排序就a了,我就把排序刪了,可是老是pe,最後還要處理n 0是就沒有人拿了輸出換行 陷阱啊。貢獻了9wa 1003 這道題應該不是簡單題了。將每個點存起來,起點...