넘치게 채우기

[LeetCode] 1550. Three Consecutive Odds 본문

PS/LeetCode

[LeetCode] 1550. Three Consecutive Odds

riveroverflow 2024. 7. 1. 19:27
728x90
반응형

https://leetcode.com/problems/three-consecutive-odds/description/

leetcode - Three Consecutive Odds

문제 유형 : 그리디, 배열

문제 난이도 : Easy

 

문제

Given an integer array arr, return true if there are three consecutive odd numbers in the array. Otherwise, return false.

정수 배열 arr이 주어진다.

홀수 3개가 붙어있으면 true를 반환하라.

아니면 false를 반환하라.

 

풀이

streak변수를 만들어서 몇 개 째 붙어 있는지 확인한다.

3번붙은적있다면 True를, 그런일없이 배열을 순회하면 false를 반환한다.

 

코드

C++

#pragma GCC optimize("03", "unroll-loops");
static const int __ = [](){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    return 0;
}();

class Solution {
public:
    bool threeConsecutiveOdds(vector<int>& arr) {
        int streak = 0;
        for(const auto& x : arr) {
            if(x%2 == 1) {
                if(++streak == 3) return true;
            } else {
                streak = 0;
            }
    
        }
        return false;
    }
};
728x90
반응형