난이도 : 중
걸린 시간 : 2일
+ 2일 내내 보고만 있었던 건 아니지만, 매일 1시간 넘게 쳐다 보고 있었던 것 같은...
처음엔 재귀라고 확신해서 재귀로 코드를 짜보려고 했지만, 사실 아직 CTE가 완벽하게 손에 익은것도 아니고 어디서부터 어떻게 짜야할 지 고민하느라 시작도 못했었다.
그리고 다음날 아무 생각없이 또 문제를 쳐다보고 있다가 갑자기 생각난 case when...!
풀고 다른 사람 풀이도 찾아보니 다들 case when으로 풀었더라는,,, 혼자 재귀에 빠져서 시간을 낭비....
그래도 case when 생각하고는 바로 통과 ㅋ
중간 난이도 오자마자 와 이렇게 까지 어렵다고? 했는데,, 사실 문제 이해능력이 떨어졌던 걸로..^^
[정답 풀이]
select N, case when p is null then 'Root'
when N in (select P from BST) then 'Inner'
else 'Leaf' end node
from BST
order by N
'SQL' 카테고리의 다른 글
[Hacker Rank] SQL_Intermediate_Medium (JOIN) (0) | 2025.01.31 |
---|---|
[Hacker Rank] SQL_Intermediate_Medium (재귀함수/REPEAT) (0) | 2025.01.30 |
[Hacker Rank] SQL_Basic_medium (union에서 order by) (0) | 2025.01.23 |
[Hacker Rank] SQL_Basic_Medium (power / abs) (0) | 2025.01.23 |
[Hacker Rank] SQL_Basic_Easy (group by / 서브쿼리) (0) | 2025.01.23 |