Leetcode-474. Ones and Zeroes
来源:互联网 发布:windows运行ios模拟器 编辑:程序博客网 时间:2024/05/21 22:36
前言:为了后续的实习面试,开始疯狂刷题,非常欢迎志同道合的朋友一起交流。因为时间比较紧张,目前的规划是先过一遍,写出能想到的最优算法,第二遍再考虑最优或者较优的方法。如有错误欢迎指正。博主首发CSDN,mcf171专栏。
博客链接:mcf171的博客
——————————————————————————————
In the computer world, use restricted resource you have to generate maximum benefit is what we always want to pursue.
For now, suppose you are a dominator of m 0s
and n 1s
respectively. On the other hand, there is an array with strings consisting of only 0s
and 1s
.
Now your task is to find the maximum number of strings that you can form with given m 0s
and n 1s
. Each 0
and 1
can be used at most once.
Note:
- The given numbers of
0s
and1s
will both not exceed100
- The size of given string array won't exceed
600
.
Example 1:
Input: Array = {"10", "0001", "111001", "1", "0"}, m = 5, n = 3Output: 4Explanation: This are totally 4 strings can be formed by the using of 5 0s and 3 1s, which are “10,”0001”,”1”,”0”
Example 2:
Input: Array = {"10", "0", "1"}, m = 1, n = 1Output: 2Explanation: You could form "10", but then you'd have nothing left. Better form "0" and "1".这个题目看完之后其实还是很明白题意,同时也很明白应该是用动态规划来做,但是动态规划一直是我的一个弱项,一直没想明白是怎么迭代的。参考了论坛的解法大致明白了思路,因为每次迭代都会更新,所以无所谓那个字符串先后。Your runtime beats 48.05% of java submissions
public class Solution { public int findMaxForm(String[] strs, int m, int n) { int [][] tables = new int[m + 1][n + 1]; for(String item : strs){ int m_0 = 0, n_1 = 0; for(int i = 0; i < item.length(); i ++){ if(item.charAt(i) == '0') m_0 ++; else n_1 ++; } for(int i = m; i >= m_0; i --) for(int j =n; j >= n_1; j--){ tables[i][j] = Math.max(tables[i][j], 1 + tables[i-m_0][j-n_1]); } } return tables[m][n]; }}
0 0
- LeetCode 474. Ones and Zeroes
- [leetcode] 474. Ones and Zeroes
- LeetCode 474. Ones and Zeroes
- Leetcode-474. Ones and Zeroes
- [LeetCode]474. Ones and Zeroes
- 【LeetCode】 474. Ones and Zeroes
- LeetCode 474. Ones and Zeroes
- [leetcode]474. Ones and Zeroes
- Leetcode 474. Ones and Zeroes
- Leetcode 474. Ones and Zeroes
- leetcode 474. Ones and Zeroes
- [LeetCode] 474. Ones and Zeroes
- LeetCode: Ones and Zeroes
- [LeetCode] Ones and Zeroes
- Leetcode 474. Ones and Zeroes (Medium) (cpp)
- 第十一周:[Leetcode]474. Ones and Zeroes
- [Leetcode] 474. Ones and Zeroes 解题报告
- 474. Ones and Zeroes
- Mybatis中在配置文件中配置别名
- 关于NSNumber
- Ubuntu环境下NDK产生.so库位数问题
- 整数分解与重组
- 刚学object-c 有点混乱 求指点
- Leetcode-474. Ones and Zeroes
- 用最有效率的方法算出2乘以8等于几?
- 63. Unique Paths II
- AMD的CPU在虚拟机下安装黑苹果,装完后出现了问题
- BZOJ 1951 [Sdoi2010] 古代猪文 数论 Lucas定理
- iOS之viewController的生命周期
- UIViewController、UINavigationController、UITabBarController,这三者里面的控制器切换的区别?
- SSM框架整合
- android 怎样将json数据转换成二进制数据