반응형

프로그래머스 코딩 테스트 문제 "수열과 구간 쿼리 2"를 풀어본다.

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

// arr_len은 배열 arr의 길이입니다.
// queries_rows는 2차원 배열 queries의 행 길이, queries_cols는 2차원 배열 queries의 열 길이입니다.
int* solution(int arr[], size_t arr_len, int** queries, size_t queries_rows, size_t queries_cols) {
    // return 값은 malloc 등 동적 할당을 사용해주세요. 할당 길이는 상황에 맞게 변경해주세요.
    int* answer = (int*)malloc(sizeof(int) * queries_rows);
    for(int i = 0;i < queries_rows;i++) {
        int min = 2000000;
        for(int j = queries[i][0];j <= queries[i][1];j++) {
            if(arr[j] > queries[i][2]) {
                if(arr[j] < min)
                    min = arr[j];
            }
        }
        answer[i] = (min == 2000000) ? -1 : min;
    }
    return answer;
}
반응형

'코딩테스트' 카테고리의 다른 글

옹알이 (1)  (0) 2025.09.20
주사위 게임 3  (0) 2025.09.20
리스트 자르기  (0) 2025.09.20
글자 지우기  (0) 2025.09.20
접미사 배열  (0) 2025.09.20
Posted by 세상을 살아가는 사람
,