[프로그래머스] K번째 수
문제설명 https://programmers.co.kr/learn/courses/30/lessons/42748 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr 사고과정 문제 설명대로만 잘 구현하면 된다! 간단한 구현 문제 풀이 def solution(array, commands): answer = [] for i, j, k in commands: res = array[i-1:j] res.sort() answer.append(res[k-1]) return answer
[프로그래머스] 크레인 인형뽑기 게임
문제설명 https://programmers.co.kr/learn/courses/30/lessons/64061 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr 사고과정 문제에서 크레인 위치가 2차원 배열 board의 열을 의미한다고 볼 수 있다. 그리고 각 크레인의 위치마다 가장 상위의 인형을 뽑아낸다고 했으니 크레인 위치가 주어졌을 때, board의 열은 크레인 위치로 고정시키고 행만 loop로 돌면서 인형이 발견되었을 때 바구니에 넣어준다. 이 때 바구니는 스택으로 구현하면 된다. 그런데 바구니에 인형을 새롭게 넣어주기 전에, 바구..
[프로그래머스] 키패드 누르기
문제설명 https://programmers.co.kr/learn/courses/30/lessons/67256 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 사고과정 우선 주어지는 키패드 좌표를 2차원 배열로 나타내었다. 이유는 키패드 간의 거리를 계산하기 위해서. 거리 계산할 때는 맨해튼 거리 기법을 사용했다. 주어진 거리가 1이라고 해서 맨해튼 거리를 적용할 수 있었다. 한 가지 중요한 점은 f..