題目描述:
在主城站街很久之後,小萌決定不能就這樣的浪費時間虛度青春,他打算去打副本。
這次的副本只有乙個boss,而且boss是不需要擊殺的,只需要和它比智力…….
boss會列出一正整數的序列,由小萌先開始,然後兩個人輪流從序列的任意一端取數,取得的數累加到積分裡,當所有數都取完,遊戲結束。
假設小萌和boss都很聰明,兩個人取數的方法都是最優策略,問最後兩人得分各是多少。
輸入
第一行:乙個正整數n(2 ≤ n ≤ 100),表示序列中正整數的個數。
第二行至末尾:用空格隔開的n個正整數(1 ≤ a[i] ≤ 200)
輸出只有一行,用空格隔開的兩個數,小萌的得分和boss的得分。
樣例輸入
64 7 2 9 5 2
樣例輸出
18 11
思路
**
int n;
int a[102];
int s[102][102];
int dfs(int l,int r,bool b)
else
} if(!b) //!b和b情況,長度乙個為奇數,乙個為偶數
return s[l][r]=max(dfs(l+1,r,!b)+a[l],dfs(l,r-1,!b)+a[r]);//加上選擇的值
else
return s[l][r]=min(dfs(l+1,r,!b),dfs(l,r-1,!b));//不加其他值
} int main()
int ans=dfs(0,n-1,false);
cout<
滴滴2017校招程式設計題 餐館
題目描述 某餐館有n張桌子,每張桌子有乙個引數 a 可容納的最大人數 有m批客人,每批客人有兩個引數 b人數,c預計消費金額。在不允許拼桌的情況下,請實現乙個演算法選擇其中一部分客人,使得總預計消費金額最大 輸入描述 輸入包括m 2行。第一行兩個整數n 1 n 50000 m 1 m 50000 第...
2017網易校招程式設計題 星際穿越
航天飛行器是一項複雜而又精密的儀器,飛行器的損耗主要集中在發射和降落的過程,科學家根據實驗資料估計,如果在發射過程中,產生了 x 程度的損耗,那麼在降落的過程中就會產生 x2 程度的損耗,如果飛船的總損耗超過了它的耐久度,飛行器就會 墜毀。問一艘耐久度為 h 的飛行器,假設在飛行過程中不產生損耗,那...
2019校招真題程式設計(七)牛牛的鬧鐘
網易牛牛總是睡過頭,所以他定了很多鬧鐘,只有在鬧鐘響的時候他才會醒過來並且決定起不起床。從他起床算起他需要x分鐘到達教室,上課時間為當天的a時b分,請問他最晚可以什麼時間起床 每個輸入包含乙個測試用例。每個測試用例的第一行包含乙個正整數,表示鬧鐘的數量n n 100 接下來的n行每行包含兩個整數,表...