
제출 코드
========================================================
SELECT W.ID, T.AGE, T.COST, W.POWER
FROM (SELECT P.AGE, MIN(coins_needed) AS COST, W.POWER, W.code
FROM WANDS W
JOIN Wands_Property P ON W.code = P.code
WHERE P.is_evil = 0
GROUP BY P.AGE, W.POWER, W.code) AS T
JOIN WANDS W ON T.code = W.code
AND T.POWER = W.POWER
AND W.coins_needed = T.COST
ORDER BY W.POWER DESC, T.AGE DESC
========================================================
처음엔 ID를 제외한 나머지를 출력하는 코드를 작성하고 ID를 붙이는 시도를 했었는데, 복잡해지고 코드도 길어졌다.
그래서 방향을 'FROM절에 적절한 테이블을 서브쿼리를 통해 구성하고' -> '하나의 기초 쿼리처럼 작성'하는 방식으로 가닥을 잡았더니 쉽게 해소되었다.
전체적으로 보면 답을 제출하는데 4시간 이상 소요되었다. 방향성 확립 후 실질적으로 정답 쿼리를 떠올리고 작성하는데는 10분..?
'해커랭크 문제풀이' 카테고리의 다른 글
| 해커랭크 Challenges 문제 (0) | 2025.09.03 |
|---|