网站备案容易吗,校园网站建设资金来源有,微信公众号怎么引流推广,wordpress插件文件夹目录 Leetcode139.单词拆分多重背包 Leetcode139.单词拆分 文章链接#xff1a;代码随想录 题目链接#xff1a;139.单词拆分 思路#xff1a;完全背包#xff0c;重点在于状态转移方程的条件。
class Solution {
public:bool wordBreak(string s, vectorstring代码随想录 题目链接139.单词拆分 思路完全背包重点在于状态转移方程的条件。
class Solution {
public:bool wordBreak(string s, vectorstring wordDict) {unordered_set wordS(wordDict.begin(), wordDict.end());vectorbool dp(s.size() 1, 0);dp[0] true;for (int j 1; j s.size(); j){for(int i 0; i j; i){string word s.substr(i, j - i);if (wordS.find(word) ! wordS.end() dp[i]) dp[j] true;}}return dp[s.size()];}
};多重背包 文章链接代码随想录 题目链接卡码网56. 携带矿石资源 思路多重背包问题将其拆解为01背包即可。
#includebits/stdc.h
using namespace std;void solve(int C, int N){vectorint dp(C 1);vectorint weight(N);vectorint value(N);vectorint nums(N);for (int i 0; i N; i) cin weight[i];for (int i 0; i N; i) cin value[i];for (int i 0; i N; i) cin nums[i];for (int i 0; i N; i){for (int j C; j weight[i]; j--){for (int k 1; k nums[i] j - k * weight[i] 0; k){dp[j] max(dp[j], dp[j - k * weight[i]] k * value[i]);}}}cout dp[C] endl;
}int main(){int C, N;cin C N;solve(C, N);return 0;
}第四十六天打卡这几天对做项目和学习路线有了新的理解和认识重点不在看多少在熟悉和掌握加油