[LeetCode]Max Consecutive Ones

오트밀·2022년 1월 21일
0
class Solution {
    public int findMaxConsecutiveOnes(int[] nums) {
        int count = 0; 
        int maxCount = 0;
        
        for( int i = 0; i < nums.length; i++ ){
            if(nums[i] == 1){
                count ++;
            }else{
                maxCount = Math.max(count, maxCount);
                count = 0;
            }
        }
        return  Math.max(count,maxCount);
    }
}

constraints
1 <= nums.length <= 105
nums[i] is either 0 or 1.

Given a binary array nums, return the maximum number of consecutive 1's in the array.

nums배열에서 가장 긴 연속된 1의 길이를 구하라.

count 와 maxCount를 0으로 설정하고 배열 전체를 for문으로 훑는다.
1이 존재할 때마다 count수를 증가시키고 1이 존재하지 않을경우(0 이 나올경우)
1. 기존의 count값과 maxCount값을 비교해서 현재까지 가장 긴 연속된 1의 길이를 maxCount에 할당한다.
2. 연속된 1이 아니기때문에 count를 0으로 초기화한다.

배열의 끝부분에에 연속된 1들이 나올수 있기때문에 마지막으로

Math.max(count,MaxCount);

로 count와 이전까지의 maxCount를 비교해준다.

profile
루틴을 만들자

0개의 댓글