코딩연습
[JS] 백준 알고리즘 Node.js 1251. 단어 나누기
니 뽀
2023. 3. 10. 13:41
1. 문제
https://www.acmicpc.net/problem/1251
2. 풀이
1) 임의의 두 부분을 골라서 단어를 쪼갠다고 했으니, 반복문을 통하여 단어를 2번 쪼갤 수 있도록 함.
2) 이후 쪼갠 단어들을 앞뒤로 뒤집은 후, 각각 단어로 만들어서 합치고 새로운 배열에 넣어둠.
3) sort() 함수와 localeCompare() 함수를 이용하여 정렬시키고 배열에 맨 처음 나오는 단어를 보여줌.
const inputs = require('fs').readFileSync('/dev/stdin').toString().trim().split('');
let makeWordArr = []
for(let i = 1; i <= inputs.length; i++){
for(let j = i+1; j < inputs.length; j++){
let firstWord = inputs.slice(0, i).reverse().join('');
let secondWord = inputs.slice(i, j).reverse().join('');
let thirdWord = inputs.slice(j).reverse().join('');
makeWordArr.push(firstWord + secondWord + thirdWord);
}
}
console.log(makeWordArr.sort((a,b) => a.localeCompare(b))[0])
3. 정리
- sort() 함수가 문자까지 정렬시키는 줄 알게 되었고, localeCompare() 함수를 처음 사용해보았는데 어떤 의미가 있는지는 다른 예제들을 통하여 확인해보도록 해야겠다.
4. 참고
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare