1909. Almost increasing sequence

Sujin·2022년 12월 26일
0

LeetCode

목록 보기
11/24
post-thumbnail

number sequence가 인풋으로 들어온다.
해당 sequence에서 한개의 숫자만 지웠을때 strictly increasing이 될 수 있는지 확인한다

💡 현재 숫자가 이전숫자보다 작을 때: drop할 숫자를 일단 찾았다
1. 현재 숫자가 전전숫자보다 크다면 이전 숫자를 삭제해주면 된다
2. 현재 숫자가 전전숫자보다 작다면 현재 숫자가 삭제되어야 한다

bool solution(vector<int> sequence) {
    int n = sequence.size();
    int remove_count = 0;
    
    if (sequence[0] >= sequence[1]) remove_count++;
    
    for (int i = 2; i < n; i++) {
        if (sequence[i-1] >= sequence[i]) {
            remove_count++;
            if (sequence[i-2] >= sequence[i])
            	// 편의를 위해 이렇게 해주면 이후의 loop에서는 계속 remove_count가 올라가기때문에 False가 최종적으로 return 되는 것을 알 수 있다.
                sequence[i] = sequence[i-1];
        }
    }
    
    return remove_count < 2;
}
profile
멋찐 나 ,,(가 되고픈)

0개의 댓글