https://school.programmers.co.kr/learn/courses/30/lessons/155652
function solution(s, skip, index) {
const alphabet = Array(26).fill(97).map((v, i)=> String.fromCharCode(v+i)).filter((v)=>!skip.includes(v));
return [...s].map((v)=>alphabet[(alphabet.indexOf(v)+index) % alphabet.length]).join("");
}
skip
에 포함된 요소를 제외한 알파벳 배열에서 s
의 인덱스에 index
를 더한 순번의 요소를 골라낸다. 길이를 넘어가면 다시 처음으로 가야 하므로, alphabet
의 길이로 나눈 나머지를 순번으로 사용한다.