https://www.acmicpc.net/problem/10809
아스키 코드로 97 ~ 122까지가 a ~ z를 의미하므로,
Array(26).fill(97)로 97 ~ 122 까지의 배열을 만든 후,
아스키 코드를 문자로 변환하는 fromCharCode 메소드를 사용해서 a ~ z 배열을 만들었다.
그 후 알파벳 배열을 순환하면서 입력받은 문자열에서 각 알파벳의 위치를 저장,
join 메소드를 이용해서 원소사이에 공백을 넣은 문자열로 출력했다.
const readline = require("readline");
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
let input;
rl.on("line", function(line) {
input = line;
// a ~ z 까지 알파벳 배열 생성
const alphabetArr = Array(26).fill(97).map((x, i) => String.fromCharCode(x + i));
const result = [];
// indexOf로 문자열에서 알파벳의 위치를 찾음
alphabetArr.map((x) => {
const position = input.indexOf(x);
result.push(position);
});
// join 메소드로 배열을 문자열로 변환 (원소와 원소 사이에는 공백을 넣음)
console.log(result.join(' '));
rl.close();
}).on("close", function() {
process.exit();
});