当前位置: 首页 > news >正文

海宁做网站北京网站建设方案托管

海宁做网站,北京网站建设方案托管,页面跳转自动升级,灌云网站建设维护139.单词拆分 题目链接#xff1a;单词拆分 题目描述#xff1a;给你一个字符串 s 和一个字符串列表 wordDict 作为字典。如果可以利用字典中出现的一个或多个单词拼接出 s 则返回 true。 **注意#xff1a;**不要求字典中出现的单词全部都使用#xff0c;并且字典中的单词… 139.单词拆分 题目链接单词拆分 题目描述给你一个字符串 s 和一个字符串列表 wordDict 作为字典。如果可以利用字典中出现的一个或多个单词拼接出 s 则返回 true。 **注意**不要求字典中出现的单词全部都使用并且字典中的单词可以重复使用。 解题思路 动规五部曲分析如下 确定dp数组以及下标的含义 dp[i]表示字符串 s前i个字符组成的字符串 s[0…i−1]是否能被拆分成若干个字典中出现的单词 确定递推公式 每次转移的时候我们需要枚举包含位置i-1的最后一个单词看它是否出现在字典中以及除去这部分的字符串是否合法即可。使用变量j遍历分割长度为i的字符串如果字符串[0……j-1]能被字典中的单词拆分并且字符串[j……i-1]在字典中则dp[i]为true。 dp[i]dp[j]  check(s[j…i−1]) dp数组如何初始化 dp[0]true 表示空串且合法。 确定遍历顺序 先遍历字符串i再遍历子串在字符串中的终止位置j。 class Solution { public:bool wordBreak(string s, vectorstring wordDict) {unordered_setstring dict(wordDict.begin(), wordDict.end());vectorbool dp(s.size() 1, false);dp[0] true;for (int j 0; j s.size(); j) {for (int i 0; i j; i) {string str s.substr(i, j - i);if (dict.find(str) ! dict.end() dp[i] true)dp[j] true;}}return dp[s.size()];} };多重背包问题 题目描述有N种物品和一个容量为V 的背包。第i种物品最多有Mi件可用每件耗费的空间是Ci 价值是Wi 。求解将哪些物品装入背包可使这些物品的耗费的空间总和不超过背包容量且价值总和最大。 解题思想 多重背包和01背包是非常像的 为什么和01背包像呢 每件物品最多有Mi件可用把Mi件摊开其实就是一个01背包问题了。 例如背包最大重量为10。 物品为 重量价值数量物品01152物品13203物品24302 问背包能背的物品最大价值是多少 和如下情况有区别么 重量价值数量物品01151物品01151物品13201物品13201物品13201物品24301物品24301 毫无区别这就转成了一个01背包问题了且每个物品只用一次。 #include iostream #include vectorusing namespace std; int main(int argc, char *argv[]) {int bagWeight, n;cin bagWeightn;vectorint weights(n),values(n),nums(n);int x;for (int i 0; i n; i) cinweights[i];for (int i 0; i n; i) cinvalues[i]; for (int i 0; i n; i) cinnums[i];for (int i 0; i n; i){int num nums[i];num--;while(num--){weights.push_back(weights[i]);values.push_back(values[i]);}}vectorint dp(bagWeight1,0);for (int i 0; i weights.size(); i){for (int j bagWeight; jweights[i];j--){dp[j] max(dp[j],dp[j-weights[i]]values[i]);}}cout dp[bagWeight];}这里也有另一种实现方式就是把每种商品遍历的个数放在01背包里面在遍历一遍。 #include iostream #include vectorusing namespace std; int main(int argc, char *argv[]) {int bagWeight, n;cin bagWeightn;vectorint weights(n),values(n),nums(n);int x;for (int i 0; i n; i) cinweights[i];for (int i 0; i n; i) cinvalues[i]; for (int i 0; i n; i) cinnums[i];vectorint dp(bagWeight1,0);for (int i 0; i weights.size(); i){for (int j bagWeight; jweights[i];j--){for (int k 1; k nums[i] (j - k * weights[i]) 0; k)dp[j] max(dp[j],dp[j-weights[i]*k]values[i]*k);}}cout dp[bagWeight];return 0; }
http://www.hkea.cn/news/14267286/

相关文章:

  • 郑州外贸网站建设商家云南网络营销公司
  • 福州网站设计大概费用优秀网站的特点
  • 网站ui设计基础wordpress添加头像
  • 企业手机网站建设策划方案营销顾问公司
  • 怎么seo网站推广免费域名注册平台永久
  • 没注册可以做网站吗企业网站制作 西安
  • 济南建网站公司价格抖音营销推广
  • 织梦模板怎么验证网站重庆多功能网站建设
  • 江苏城乡与住房建设部网站美发培训网站
  • 网站优化具体怎么做长春建站模板源码
  • 做网站域名重要吗医药网站建设中图片
  • 北京南站地铁几号线重庆快速网站推广
  • 建设网站英语成免费crm破解版
  • 直播一级a做爰片免费网站阿勒泰网站建设
  • 做网站流程天象集团ui培训
  • 飞色网站商城怎么做网站开发z亿玛酷1流量订制
  • 哪一个网站可以做任务拿佣金推广文章
  • 网站建设氺首选金手指14深圳市保障性住房轮候申请
  • 阿里巴巴做网站难吗wordpress显示文章摘要
  • 网站正在建设中是什么意思贵阳网站建设方案维护
  • 网站开发周期一个人做网站设计兼职
  • 做网站的销售好做吗建设部网站撤销注册资质的都是公职人员吗
  • 网站设计开发世界500强企业中国有哪些
  • 优酷土豆网站建设百度知道登录
  • 建设部四库一平台查询网站百度seo综合查询
  • 深圳专业的免费建站wordpress 炫酷主题
  • 一个网站多个数据库wordpress用插件注册
  • 行业网站源码在深圳找工作上什么网
  • 黄石网站建设方案汕头网站建设推广哪家好
  • 淄博电商网站建设把自己做的网站传到网上