[프로그래머스] 둘만의 암호 / JavaScript / Level 1

KimYoungWoong·2023년 2월 24일
0

Programmers

목록 보기
51/60
post-thumbnail

🚩문제 주소


📄 풀이

구현

  1. 스킵해야하는 알파벳을 제외한 알파벳 배열을 만듭니다.
  2. 알파벳 배열에서 바꿔야 하는 알파벳의 인덱스를 찾습니다.
  3. 알파벳의 인덱스에서 주어진 인덱스만큼 더하는데, 끝을 넘어가게 되면 처음으로 돌아와야 하므로 (찾은 인덱스 + 주어진 인덱스) % 알파벳 배열의 길이로 알파벳 배열에서 찾아서 정답 문자열에 이어 붙힙니다.
  4. 정답을 반환합니다.


👨‍💻 코드

function solution(s, skip, index) {
  let answer = "";
  const alphabet = "abcdefghijklmnopqrstuvwxyz"
    .split("")
    .filter((v) => !skip.includes(v));

  for (let i = 0; i < s.length; i++) {
    const idx = alphabet.indexOf(s[i]);
    answer += alphabet[(idx + index) % alphabet.length];
  }

  return answer;
}

profile
블로그 이전했습니다!! https://highero.tistory.com

0개의 댓글