백준/ Silver 4 문제 , 백준 Node.js 자바스크립트 1755 , 숫자놀이 [정렬]
문제 출처
https://www.acmicpc.net/problem/1755
정답
const input = require("fs").readFileSync("/dev/stdin").toString().trim();
const dic = {
1: "one",
2: "two",
3: "three",
4: "four",
5: "five",
6: "six",
7: "seven",
8: "eight",
9: "nine",
0: "zero",
};
// 숫자를 받아서 영어로 변환
const Change = (S) => {
S = String(S);
const tmp = [];
for (let i = 0; i < S.length; i++) {
tmp.push(dic[Number(S[i])]);
}
return tmp;
};
const [start, end] = input.split(" ").map(Number);
const check = [...new Array(end - start + 1)].map(() => []);
let j = 0;
for (let i = start; i <= end; i++) {
check[j].push(i);
let result = Change(i);
check[j] = [...check[j], ...result];
j += 1;
}
check.sort((a, b) => {
if (a[1] > b[1]) return 1;
if (a[1] < b[1]) return -1;
if (a[2] > b[2]) return 1;
if (a[2] < b[2]) return -1;
});
let answer = "";
for (let i = 0; i < end - start + 1; i++) {
answer += check[i][0];
if ((i + 1) % 10 !== 0 || i != end - start) {
answer += " ";
}
if ((i + 1) % 10 == 0 || i == end - start) {
console.log(answer);
answer = "";
}
}
반응형
'알고리즘 공부 > 백준 - 자바스크립트' 카테고리의 다른 글
백준/ Silver 2 문제 , 백준 Node.js 자바스크립트 1138 , 한 줄로 서기 [구현] (0) | 2022.09.09 |
---|---|
백준/ Silver 3 문제 , 백준 Node.js 자바스크립트 20291 , 파일 정리 [정렬] (1) | 2022.09.08 |
백준/ Silver 3 문제 , 백준 Node.js 자바스크립트 1431, 시리얼 번호 [정렬] (0) | 2022.09.06 |
백준/ Silver 1 문제 , 백준 Node.js 자바스크립트 1946 , 신입 사원 [정렬] (0) | 2022.09.06 |
백준/ Silver 4 문제 , 백준 Node.js 자바스크립트 1015 , 수열 정렬 [정렬] (0) | 2022.09.06 |