https://school.programmers.co.kr/learn/courses/30/lessons/181924
def solution(arr, queries):
# arr = [0, 1, 2, 3, 4] 이고 query 에 있는 i, j에 따라 숫자를 바꿔준다.
for query in queries:
i, j = query
arr[i], arr[j] = arr[j], arr[i]
return arr
수열과 구간 쿼리3은
[[0, 3],[1, 2],[1, 4]] 리스트 안에 리스트 값이 있는 경우
for 문을 이용해서
i, j = query 로 원소를 받아올 수 있는 언패킹 문법을 새로 알게 되어서 좋았고
이것 이외에는 신기한게 없었습니다!
수열과 구간 쿼리 2는, 쿼리 3문제를 반대로 하는 느낌이 있었습니다.
쿼리 3문제와 비교했을 때 상대적으로 어려웠어요.
for query in queries:
s, e, k = query
for 문 안에 넣어서, 각 변수들을 받아줬구요
s 이상, e 이하인 숫자들을 먼저 저장하고
available_arr = arr[s:e+1]
그 원소 중에서, k 보다 큰 원소들을
list comprehension으로 받아주었습니다.
filtered_arr = [x for x in available_arr if x > k]
전체 풀이입니다.
def solution(arr, queries):
answer = []
for query in queries:
s, e, k = query
available_arr = arr[s:e+1]
filtered_arr = [x for x in available_arr if x > k]
if filtered_arr != []:
answer.append(min(filtered_arr))
else:
answer.append(-1)
return answer
특별히 어렵다거나 그런건 아니었지만
list comprehension 에 살짝 익숙해지기도 했고
문제를 푸는 순서에 대해 조금 익숙해진거 같아서
기록합니다
'코딩테스트' 카테고리의 다른 글
[Java] 배열+반복문으로 각 학생의 총점, 평균 계산 (0) | 2023.12.20 |
---|---|
[Python][CodingTest] 달리기 경주 (2) | 2023.12.20 |
[Python] 코드 처리하기 (0) | 2023.12.15 |
[프로그래머스]코딩 기초문제 3일동안 42문제 푼것들! (2) | 2023.12.15 |
[PCCP 기출문제] 1번, 붕대감기 게임 (2) | 2023.11.29 |