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

网站质量度山东住房和建设庭官网站官

网站质量度,山东住房和建设庭官网站官,南宁网站快速优,外贸网络推广的公司题目 给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的长度,该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素,集合 x 是集合 y 的 子集 。 示例 1: 输入:strs [&…

题目

给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的长度,该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素,集合 x 是集合 y 的 子集 。   示例 1: 输入:strs = ["10", "0001", "111001", "1", "0"], m = 5, n = 3
输出:4
解释:最多有 5 个 0 和 3 个 1 的最大子集是 {"10","0001","1","0"} ,因此答案是 4 。
其他满足题意但较小的子集包括 {"0001","1"} 和 {"10","1","0"} 。{"111001"} 不满足题意,因为它含 4 个 1 ,大于 n 的值 3 。
 示例 2: 输入:strs = ["10", "0", "1"], m = 1, n = 1
输出:2
解释:最大的子集是 {"0", "1"} ,所以答案是 2 。
   提示: • 1 <= strs.length <= 600 • 1 <= strs[i].length <= 100 • strs[i] 仅由 '0' 和 '1' 组成 • 1 <= m, n <= 100

思路

因为找到最长的字符串还有0和1的个数限制,所以我们用到三维数组。dp[i][j][k]表示前i个字符串中,使用不超过j个0和k个1时的最大子集长度。遍历每个字符串,统计0和1的数量,然后遍历每个字符串所有可能的0和1的个数组合,对于每个j,k,不选就则继承前i个字符串的结果,如果当前字符串0不超过j,1不超过k,比较选与不选当前字符串的两种情况,取较大值更新dp,输出dp[s][m][n]为最终结果。

代码

class Solution {
public://统计字符串中0和1的数量vector<int> getZerosOnes(string& s){vector<int> ans(2,0);for(char c:s) ans[c-'0']++; //'0'转为0,'1'转为1return ans;}int findMaxForm(vector<string>& strs, int m, int n) {int s=strs.size();//dp[i][j][k]表示前i个字符串中,0不超过j,1不超过k的最大子集长度vector<vector<vector<int>>> dp(s+1,vector<vector<int>>(m+1,vector<int>(n+1,0)));       for(int i=0;i<s;++i){vector<int> temp=getZerosOnes(strs[i]);//获取当前字符串的0和1数量int zeros = temp[0], ones = temp[1];for(int j=0;j<=m;++j){for(int k=0;k<=n;++k)//遍历所有可能的1容量{dp[i+1][j][k]=dp[i][j][k];//不选当前字符串的情况if(k>=ones && j>=zeros) //当前字符串的0和1数量不超过当前容量限制
//dp[i][j-zeros][k-ones]+1代表选择当前字符串,dp[i][j][k]代表不选当前字符串dp[i+1][j][k]=max(dp[i][j-zeros][k-ones]+1,dp[i][j][k]);}}}return dp[s][m][n];}
};


文章转载自:

http://Mt7YLAZp.pmdnx.cn
http://91b2YCOS.pmdnx.cn
http://9cIUtTM0.pmdnx.cn
http://tTishqqK.pmdnx.cn
http://tTkgvK1p.pmdnx.cn
http://DkCHtxiT.pmdnx.cn
http://zXs0kUwi.pmdnx.cn
http://g7NQlIe6.pmdnx.cn
http://l9eCFRgs.pmdnx.cn
http://NHiPrsgq.pmdnx.cn
http://bTVj1rmO.pmdnx.cn
http://fUjNOLC2.pmdnx.cn
http://QAYaPLhf.pmdnx.cn
http://j6yQZ9aQ.pmdnx.cn
http://Xn1cOw4U.pmdnx.cn
http://j2uPY1ZR.pmdnx.cn
http://RkymhvBx.pmdnx.cn
http://09eqjx0g.pmdnx.cn
http://IhmvCAix.pmdnx.cn
http://Ps5G8Pmd.pmdnx.cn
http://QKMs4HY0.pmdnx.cn
http://hy04MHU2.pmdnx.cn
http://wTmN1SJH.pmdnx.cn
http://JNaEFPqJ.pmdnx.cn
http://w4zQT4TP.pmdnx.cn
http://PMkZKz0h.pmdnx.cn
http://1xffKneP.pmdnx.cn
http://14g3Exq6.pmdnx.cn
http://r6Pph7tm.pmdnx.cn
http://xmpj1HkE.pmdnx.cn
http://www.dtcms.com/wzjs/676587.html

相关文章:

  • 百度容易收录哪些网站广西建设厅培训中心
  • 怎么注册免费个人网站上海缔客网站建设公司
  • 太原网站上排名建筑行业平台
  • 上海住房和城乡建设厅网站广州网站开发外包哪家好
  • 企业年报上海网站营销seo方案
  • 用易语言可以做网站吗html5 jsp做网站可以么
  • 个人网页网站建设在百度做网站需要什么资料
  • 哪些网站做微课赚钱电商网站有哪些
  • 网站机房建设流程品牌形象网站源码
  • 成都市那里有网站建设制作公司网站建设服务联享科技
  • 1688网站特点网站建设一龙条
  • 河北建设厅网站官网广东贸易网站建设哪家
  • 高端网站建设方案报价php网站广告管理系统
  • 订阅号可以做网站么网站响应度
  • 大流量网站解决访问量百度公司官网招聘
  • 本溪建网站娱乐网站设计SEO
  • 微网站收费标准济南网站建设内容设计
  • 网站设计编辑金融网站开发公司
  • wordpress去掉首页网站关键词如何优化上首页
  • 做网站设计需要什么软件wordpress 管理权限管理
  • 南京哪里做网站创意设计产业
  • 学网站建设 去哪里网业车资格证怎么报名
  • 古楼角网站建设哪家做企业网站
  • 长沙银行网站建设软文推广策划方案
  • 教育培训网站旅游网站建设的目标是什么意思
  • 筑巢网站后台管理系统丝路云网站建设
  • 网站建设方案多少钱加强二级网站建设 招生
  • 点卡平台网站开发网站建设功能seo
  • crm软件是干嘛的快速排名软件seo系统
  • dw个人网站模板下载电商网站对比 京东商城 淘宝网 阿里巴巴