[TIL] 카테고리/알고리즘 문제풀기
[자바스크립트] 프로그래머스 Lv.1 K번째수
티레이니
2022. 5. 26. 01:35
알고리즘 주차 때 스파르타에서 제공해줬던 문제 리스트를 문제 번호 순으로 풀고있는데,
중간에 번호 하나를 스킵했다는걸 깨닫곤 다시 돌아가 풀었다 ㅎㅎ..
문제도 2차원 배열이라 저번 문제보단 난이도가 있긴한거같은데,
뭔가 풀이의 난이도보다도 설명이 좀 알아듣기 어렵게? 적혀있어서
문제 요구사항을 정확히 이해하기 위해 꼼꼼히 읽어주고 시작했다.
// 커맨드 배열 구조 : [[시작숫자, 끝낼숫자, 정렬 후에 몇번째 값 뽑을건지 ][…][…]]
// 시작 숫자 : 인덱스 번호가 아니다! 1부터 시작한다!
for (i=0; i<commands.length ;i++) { //주어진 커맨드 배열 숫자만큼 수행
//array를 슬라이스해준다. 인덱스는 0부터 시작하니 slice의 시작 인덱스에서는 -1을 해줬다.
let temp = array.slice(commands[i][0]-1, commands[i][1]); //우선 임시 배열에 넣어둔상태로
temp.sort((a,b) => (a-b)) // 예쁘게 정렬해주고
answer.push(temp[commands[i][2]-1]); // 정답 배열에 밀어넣는다!
}
그래도 지나온 주차라고.. 역시 문제풀이 자체가 어렵진 않다.
더 예쁘게, 빠르게, 잘 푸는게 관건일 뿐.. 이건 아직 갈길이 먼듯싶다.
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