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

网站建设套餐是什么嘉兴seo

网站建设套餐是什么,嘉兴seo,做棋牌网站的步骤,wordpress链接在哪里设置密码一、单词拆分 题目一:139. 单词拆分 139. 单词拆分 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。如果可以利用字典中出现的一个或多个单词拼接出 s 则返回 true。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以…

一、单词拆分

题目一:139. 单词拆分

139. 单词拆分

给你一个字符串 s 和一个字符串列表 wordDict 作为字典。如果可以利用字典中出现的一个或多个单词拼接出 s 则返回 true

注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。

定义一个布尔型的动态规划数组dp

dp[i]表示字符串s的前i个字符能否被字典wordDict中的一个或多个单词拼接出来

dp[0]为真,因为空字符串总是可以被拼接出来的

对于字符串s中的每一个位置i(从1到字符串长度),遍历i之前的所有位置j(从0到i-1),检查从ji的子字符串是否存在于字典wordDict

/** @lc app=leetcode.cn id=139 lang=cpp** [139] 单词拆分*/// @lc code=start
class Solution {
public:bool wordBreak(string s, vector<string>& wordDict) {unordered_set<string> dict(wordDict.begin(), wordDict.end());vector<bool> dp(s.length() + 1, false);dp[0] = true; // 空字符串总是可以被拼接for (int i = 1; i <= s.length(); ++i) {for (int j = 0; j < i; ++j) {if (dp[j] && dict.find(s.substr(j, i - j)) != dict.end()) {dp[i] = true;break; // 找到一种拼接方式即可}}}return dp[s.length()];}
};
// @lc code=end

二、多重背包

56. 携带矿石资源(第八期模拟笔试)

时间限制:5.000S  空间限制:256MB

题目描述

你是一名宇航员,即将前往一个遥远的行星。在这个行星上,有许多不同类型的矿石资源,每种矿石都有不同的重要性和价值。你需要选择哪些矿石带回地球,但你的宇航舱有一定的容量限制。 

给定一个宇航舱,最大容量为 C。现在有 N 种不同类型的矿石,每种矿石有一个重量 w[i],一个价值 v[i],以及最多 k[i] 个可用。不同类型的矿石在地球上的市场价值不同。你需要计算如何在不超过宇航舱容量的情况下,最大化你所能获取的总价值。

输入描述

输入共包括四行,第一行包含两个整数 C 和 N,分别表示宇航舱的容量和矿石的种类数量。 

接下来的三行,每行包含 N 个正整数。具体如下: 

第二行包含 N 个整数,表示 N 种矿石的重量。 

第三行包含 N 个整数,表示 N 种矿石的价格。 

第四行包含 N 个整数,表示 N 种矿石的可用数量上限。

输出描述

输出一个整数,代表获取的最大价值。

动态规划数组dp[j]表示容量为j的背包所能装下的最大价值。对于每种矿石i,遍历背包容量j从大到小,更新dp[j]

具体实现步骤如下:

  1. 对于每种矿石i,将其按数量k[i]进行二进制拆分,比如如果k[i] = 4,可以拆分为1,2,1(共计4个),这样就将问题转化为了多个0-1背包问题。
  2. 对于每个拆分后的矿石,更新dp[j]
#include <iostream>
#include <vector>
using namespace std;int main() {int C, N;cin >> C >> N;vector<int> w(N), v(N), k(N);for (int i = 0; i < N; ++i) cin >> w[i];for (int i = 0; i < N; ++i) cin >> v[i];for (int i = 0; i < N; ++i) cin >> k[i];vector<int> dp(C + 1, 0);for (int i = 0; i < N; ++i) {int num = k[i];for (int k = 1; num > 0; k *= 2) { int mul = min(k, num);int weight = w[i] * mul;int value = v[i] * mul;for (int j = C; j >= weight; --j) {dp[j] = max(dp[j], dp[j - weight] + value);}num -= mul;}}cout << dp[C] << endl;return 0;
}

http://www.hkea.cn/news/435402/

相关文章:

  • 做游戏网站有几个要素seo网站关键词优化报价
  • 蓬业东莞网站建设技术支持东莞做网站公司首选
  • 网站版式设计获客渠道有哪些
  • 今日军事新闻简短扬州seo优化
  • 国外好看的教育类网站模板下载东莞做网站最好的是哪家
  • 微擎与wordpress快速优化seo软件推广方法
  • 英文网站设计哪家好免费网站搭建
  • 网站建设公司 销量深圳谷歌seo公司
  • 新蔡哪有做网站建设的全球疫情今天最新消息
  • 怎么做平台网站百度seo报价方法
  • 帮人做网站 怎么收费怎么用网络推广
  • 网站排名优化建设百度广告投放技巧
  • 文件服务器网站搭建教程好的竞价托管公司
  • 黑龙江省城乡和住房建设厅网站首页百度链接地址
  • 网站模板修改工具专业seo关键词优化
  • 口碑好的句容网站建设yahoo搜索
  • 深圳网站建设外贸公司价格网络营销的背景和意义
  • 长春网站建设硕成传媒seo快速排名优化公司
  • web网站开发能使用c 吗免费建立个人网站申请
  • 织梦网站修改教程视频网站优化培训学校
  • 南沙区交通和建设局网站中国十大网络销售公司
  • 免费建设网站的方法百度网址大全 官网
  • 手机网站设计制作公司微信推广费用一般多少
  • 建设网站需要什么注册域名费用一般多少钱
  • 女性门户网站源码百度指数功能有哪些
  • 怎么帮公司做网站建设谷歌搜索引擎免费入口 香港
  • 请写出网站建设前期需要做的准备外贸定制网站建设电话
  • 南京门户网站建设网络营销优秀案例
  • 2012服务器如何做网站周口网络推广哪家好
  • 贵阳搜索玩的网站网络舆情软件免费入口