动态规划-【动态规划专题班】ACM总冠军、清华+斯坦福大神带你入门动态规划算法
热门回复:
- 幽弥狂_YMK:可否将之前的一些免费报名的视频也放上。
- Mr___Li:class Solution {
public int coinChange(int【】 coins, int amount) {
if(amount == 0)return 0;
int【】 dp = new int【amount+1】;
Arrays.fill(dp, Integer.MAX_VALUE);
dp【0】 = 0;
for(int coin: coins) {
for(int i=coin;i<=amount;i++) {
if(dp【i-coin】 != Integer.MAX_VALUE) {
dp【i】 = Math.min(dp【i】, dp【i-coin】+1);
}
}
}
return dp【amount】 == Integer.MAX_VALUE ? -1 : dp【amount】;
}
}
- 萌萌萌萌萌人:交作业,和评论区之前里发的同学的不一样,不过我跑了几个数据看起来是对的。如果有问题的话希望有大佬指出错误ORZ
#include <iostream>
using namespace std;
typedef long long ll;
int main(){
ll nums【】 = {1, 2, 300, -1, 10, 100},
size = sizeof(nums) / sizeof(nums【0】);
ll dp【size+1】, ans;
ans = dp【0】 = nums【0】;
for(int i=1; i<=size; i++){
dp【i】 = max(dp【i-1】 * nums【i-1】, nums【i-1】);
ans = max(ans, dp【i】);
}
cout << ans << endl;
return 0;
}
- 云无月的katze:大佬就是大佬。找了那么多dp的课程只有这个大佬和我们德国教授的思路是一样的。虽然我们教授教案也是copy美帝学校的[喜极而泣]
- 粥粥学长:讲的太好了,良心视频!!!如果能放出一些有关DFS的就更好了