1. 문제
https://www.acmicpc.net/problem/20291
2. 풀이과정
1. map 자료구조를 사용해서 key = 확장자명, value = 카운트 수으로 저장
2. 확장자 문자열 사전순 정렬
3. 출력
📛주의할 점
이 문제 자바스크립트로 풀다보면 😡시간초과😡를 만날 수 있을 것이다....
로직 문제인줄 알고 계속 헤맸는데...
이유는 바로 출력부분에 있었는데 한줄씩 console.log를 하면 시간초과가 발생한다!
하나의 문자열로 만든 후 결과 console.log 한번에 출력하자!
3. 자바스크립트 정답 코드
const filepath = process.platform === 'linux' ? '/dev/stdin' : './input.txt';
const input = require('fs').readFileSync(filepath).toString().trim().split('\n');
const n = +input.shift();
const myMap = new Map();
for (let i = 0; i < n; i++) {
let x = input[i].split('.')[1];
myMap.set(x, myMap.has(x) ? myMap.get(x) + 1 : 1);
}
console.log(
[...myMap]
.map((e) => e.join(" "))
.sort()
.join("\n")
.trim()
);
'🏆 PS(Problem Solving) > Baekjoon' 카테고리의 다른 글
[Node.js] 백준 Javascript 11501 주식 (0) | 2024.08.10 |
---|---|
[Node.js] 백준 Javascript 1913 달팽이 (0) | 2024.06.07 |
[Node.js] 백준 Javascript 21608 상어 초등학교 (0) | 2024.06.04 |
[Node.js] 백준 Javascript 20436 ZOAC 3 (1) | 2024.06.03 |
[Node.js] 백준 Javascript 1244 스위치 켜고 끄기 (0) | 2024.06.01 |