0
点赞
收藏
分享

微信扫一扫

2022.2.5-----leetcode.2155

public static List<Integer> maxScoreIndices(int[] nums) {
int[] score=new int[2];//左右得分
int[] cnt=new int[2];//0和1的数量
List<Integer> ans=new ArrayList<>();//记录最大得分下标
for (int i = 0; i < nums.length; i++) {
if(nums[i]==0)
cnt[0]++;
else
cnt[1]++;

}
//定义i=0时为初始状态
score[1]=cnt[1];
ans.add(0);
int max=cnt[1];//记录历史最大得分
//遍历计算得分,当max更新时,ans也更新
for (int i = 1; i < nums.length+1; i++) {
//
if(nums[i-1]==0)
score[0]++;
else
score[1]--;
if(max<score[0]+score[1])
{
max=score[0]+score[1];
ans.clear();
ans.add(i);
}
else if(max==score[0]+score[1])
{
ans.add(i);
}


}
return ans;
}
举报

相关推荐

0 条评论