P1336 最佳課題選擇

2022-06-02 04:48:08 字數 755 閱讀 3387

題意:給出我們需要學的科目數,給出m種不同的科目,n<=m

即可以學的科目數小於我們需要學的科目數,也就是說我們需要多次學同一門科目

計算學習某門科目的時間為:

求如何學習才能讓時間最低;

思路:給出dp【i】【j】表示選擇前i種科目學習j次所花最少時間

1 #include2

using

namespace

std;

3 typedef long

long

ll;4

const

int maxn=2e3+10;5

ll dp[maxn][maxn];

6ll a[maxn],b[maxn];

7ll qpow(ll x,ll y)815

return

sum;16}

17int

main()

1824

for(int i=1;i<=n;i++)

25 dp[1][i]=a[1]*qpow(i,b[1

]);26

for(int i=1;i<=m;i++)

27 dp[i][0]=0;28

for(int i=2;i<=m;i++)35}

36}37 printf("

%lld\n

",dp[m][n]);

38return0;

39 }

view code

洛谷 題解 P1336 最佳課題選擇

詳細解析解題過程 dp i j 表示前i節課題寫j篇 花費的最少時間for int i 0 i 20 i for int j 0 j 200 j dp i j inf 先初始化為inf for int i 0 i m i dp i 0 0 for int i 1 i m i 前i節課程 for in...

luogu P1336 最佳課題選擇 揹包dp

題目描述 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...