(1).백준 10804번 카드 역배치는 20장의 카드가 주어질 때
특정 구간 사이의 카드만 역으로 정렬하는 테스트케이스를 계속 진행한 후
최종적으로 카드의 배치를 출력해야 하는 문제였다.
원래 어떻게 풀어야 하는지는 모르겠지만
간단하게 시작점, 범위, 끝점으로 나눈 다음
해당 범위를 reverse()메서드를 통해 거꾸로 나눠주고
각각 구조분해할당으로 쪼개서 result를 재할당하는 방식으로 해결했다.
const input = `1 20
2 19
3 18
4 17
5 16
6 15
7 14
8 13
9 12
10 11`.split('\n').map(el => el.split(' ').map(Number))
let result = []
for(let i = 1 ; i <= 20 ; i++){
result.push(i)
}
for(let i = 0 ; i < input.length ; i++){
const [x,y] = input[i]
result = [...result.slice(0,x-1), ...result.slice(x-1, y).reverse(), ...result.slice(y)]
}
console.log(result.join(' '))'회고' 카테고리의 다른 글
| [개발일지] - 651 (0) | 2025.04.15 |
|---|---|
| [개발일지] - 650 (0) | 2025.04.14 |
| [개발일지] - 648(주말) (0) | 2025.04.12 |
| [개발일지] - 647 (0) | 2025.04.12 |
| [개발일지] - 646 (0) | 2025.04.10 |
