matrix67要在下個月交給老師n篇**,**的內容可以從m個課題中選擇。由於課題數有限,matrix67不得不重複選擇一些課題。完成不同課題的**所花的時間不同。具體地說,對於某個課題i,若matrix67計畫一共寫x篇**,則完成該課題的**總共需要花費ai*x^bi個單位時間(係數ai和指數bi均為正整數)。給定與每乙個課題相對應的ai和bi的值,請幫助matrix67計算出如何選擇**的課題使得他可以花費最少的時間完成這n篇**。
第一行有兩個用空格隔開的正整數n和m,分別代表需要完成的**數和可供選擇的課題數。
以下m行每行有兩個用空格隔開的正整數。其中,第i行的兩個數分別代表與第i個課題相對應的時間係數ai和指數bi。
對於30%的資料,n<=10,m<=5;
對於100%的資料,n<=200,m<=20,ai<=100,bi<=5。
輸出完成n篇**所需要耗費的最少時間。
10 32 11 2
2 1
19
各個測試點1s
#include#include#include
#include
#include
using
namespace
std;
long
long dp[10001],c[510][10001
];
intmain()
memset(dp,
0x3f3f3f3f,sizeof
(dp));
dp[0]=0
;
for(i=1;i<=m;++i)//
一共有m個課題
for(j=n;j>=0;--j)//
要完成n個研究課題
for(k=1;k<=j;++k)//
選擇的次數
dp[j]=min(dp[j],dp[j-k]+c[i][k]);
printf(
"%d\n
",dp[n]);
return
0;
}
posted @
2017-01-22 13:42
惑&葬 閱讀(
...)
編輯收藏
Vijos P1198 最佳課題選擇
matrix67要在下個月交給老師n篇 的內容可以從m個課題中選擇。由於課題數有限,matrix67不得不重複選擇一些課題。完成不同課題的 所花的時間不同。具體地說,對於某個課題i,若matrix67計畫一共寫x篇 則完成該課題的 總共需要花費ai x bi個單位時間 係數ai和指數bi均為正整數 ...
最佳課題選擇
時間限制 1 sec 記憶體限制 128 mb matrix67要在下個月交給老師n篇 的內容可以從m個課題中選擇。由於課題數有限,matrix67不得不重複選擇一些課題。完成不同課題的 所花的時間不同。具體地說,對於某個課題i,若matrix67計畫一共寫x篇 則完成該課題的 總共需要花費ai x...
分組揹包 最佳課題選擇
題目描述 matrix67要在下個月交給老師n篇 的內容可以從m個課題中選擇。由於課題數有限,matrix67不得不重複選擇一些課題。完成不同課題的 所花的時間不同。具體地說,對於某個課題i,若matrix67計畫一共寫x篇 則完成該課題的 總共需要花費ai xbi個單位時間 係數ai和指數bi均為...