Maximum Score After Splitting a String
给一个字符串, 求二分它以后, 左边0的个数与右边1的个数相加最大是多少. 先算一个有多少个1, 然后排除法.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
class Solution { public int maxScore(String s) { int one = 0; int n = s.length(); for(int i = 0; i < n; i++) { if(s.charAt(i) == '1') one++; } int zero = 0; int max = 0; for(int i = 0; i < n - 1; i++) { if(s.charAt(i) == '0'){ zero++; } else{ one--; } max = Math.max(max, zero+one); } return max; } } |