funcfindMaxForm(strs []string, m int, n int)int{// golang 二维数组的初始化dp :&#61;make([][]int, m &#43;1)for i :&#61;0; i <&#61; m; i&#43;&#43;{dp[i]&#61;make([]int, n &#43;1)}// 这个题我们不能从0,0开始判断&#xff0c;外循环条件是strfor_, str :&#61;range strs {// 查询当前字符串中0和1的个数number0, number1 :&#61;getLen(str)for i :&#61; m; i >&#61; number0; i--{for j :&#61; n; j >&#61; number1; j--{dp[i][j]&#61;max(dp[i][j], dp[i-number0][j-number1]&#43;1)}}}return dp[m][n] }funcmax(a, b int)int{if a > b {return a}return b }funcgetLen(str string)(number0, number1 int){for_, n :&#61;range str {if n &#61;&#61;&#39;0&#39;{number0&#43;&#43;}else{number1&#43;&#43;}}return number0, number1 }