백준 10809번 Node.js 문제풀이

Cho Dragoo·2021년 5월 20일
0
post-thumbnail

JavaScript 백준 온라인 알고리즘 공부

백준 10809번 Node.js 문제풀이

알파벳 찾기
https://www.acmicpc.net/problem/10809



본인이 제출한 답안

const fs = require("fs");
const input = (
  process.platform === "linux"
    ? fs.readFileSync("/dev/stdin").toString()
    : `baekjoon`
).trim();

let answerArr = [];

for (let i = 97; i <= 122; i++) {
  let alph = String.fromCharCode(i);
  let answer = input.indexOf(alph);
  answerArr += answer + " ";
}

console.log(answerArr);

풀이과정 소감

  • 입력에 주어진 단어에 해당하는 알파벳이 몇번째에 나오는지 출력하는 것인데 문제의 출력 방식을 보면 indexOf()를 쓰라고 유도한 듯이 보인다.
    단어을 대조하는 작업을 위해 반복문을 써야하는데 반복문으로 걸러낼려면 의미있는 연속된 숫자열이 필요하다. 알파벳을 아스키코드(ASCII)라고 생각하고 이것을 문자 또는 문자열로 바꾸어보면 연속된 숫자 97 ~ 122라는걸 알수있다.
    이 숫자들을 반복문에 쓰면 String.fromCharCode(i)로 변환해 A~Z 모두 돌아가는 단어를 대조 할 수있는 환경이 구축되므로 문제를 풀 수있게 된다.
profile
어떤 문제든 파악 할 수 있으며 해결책을 찾을 수 있는 개발능력을 꿈꾸고 있습니다.

0개의 댓글