題目描述:
早就和lyk約好了去打cs,一直沒找著時間,終於今天我家沒人,他家也沒人,總算可以出去了。但是偏偏天公不作美,某某人非要留那麼多題要做。沒辦法只能盡快做完然後抓緊時間吧……
為了盡量節省時間,我倆決定分開做所有題吧(嘿嘿,稍微耍一下滑~~)。但是有的題我比較擅長,而有的題lyk要比我做的快。所以為了盡快做完所有的題,我們要好好的分配一下。現在給出你要做題 的數目和我倆分別做每個題所需要的時間。希望你幫忙計算一下,我們最少需要多長時間才能做完所有的題去打cs啊!!!
輸入描述:
第一行乙個正整數n,表示有n個題要做。
接下來有n行,每行兩個正整數ai,bi。 分別表示我和lyk做每個題所用的時間。
輸出描述:
乙個數,最少需要多長時間才能去打cs。
樣例輸入:
3 5 10
6 11
7 12
樣例輸出:
30%的資料滿足:1 <= n <= 20
100%的資料滿足:1 <= n <= 200 , 1 <= ai,bi <=200
思路:
動態規劃
狀態:f[i][j]記錄前i個題a做j分鐘b的最少用時。
轉移:f[i][j]=min(f[i-1][j-a],f[i-1][j]+b。
f[i-1][j-a]為選擇a,f[i-1][j]+b為選擇b。
最後對於f[n]列舉a的做題時間更新答案 。
#include
#include
using
namespace
std;
const
int maxn=201;
int n,a,b,sum,ans=maxn*maxn*maxn,f[maxn][maxn*maxn];
int main()
for(int k=1;k<=40000;k++)
ans=min(ans,max(k,f[n][k]));
cout
0;}
一起去打cs
問題描述 早就和lyk約好了去打cs,一直沒找著時間,終於今天我家沒人,他家也沒人,總算可以出去了。但是偏偏天公不作美,某某人非要留那麼多題要做。沒辦法只能盡快做完然後抓緊時間吧 為了盡量節省時間,我倆決定分開做所有題吧 嘿嘿,稍微耍一下滑 但是有的題我比較擅長,而有的題lyk要比我做的快。所以為了...
codevs 一起去打cs
題目描述 description 早就和lyk約好了去打cs,一直沒找著時間,終於今天我家沒人,他家也沒人,總算可以出去了。但是偏偏天公不作美,某某人非要留那麼多題要做。沒辦法只能盡快做完然後抓緊時間吧 為了盡量節省時間,我倆決定分開做所有題吧 嘿嘿,稍微耍一下滑 但是有的題我比較擅長,而有的題ly...
一起去打CS(codevs 5059)
題目描述 description 早就和lyk約好了去打cs,一直沒找著時間,終於今天我家沒人,他家也沒人,總算可以出去了。但是偏偏天公不作美,某某人非要留那麼多題要做。沒辦法只能盡快做完然後抓緊時間吧 為了盡量節省時間,我倆決定分開做所有題吧 嘿嘿,稍微耍一下滑 但是有的題我比較擅長,而有的題ly...