한 걸음씩
[프로그래머스][JS] 둘만의 암호 본문
https://school.programmers.co.kr/learn/courses/30/lessons/155652
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이 과정
function solution(s, skip, index) {
// 아스키 코드로 소문자 알파벳 배열을 생성하는데 skip배열에 있는 요소는 제외
let alpha = []
for (let i = 97; i < 123; i++){
if (!skip.includes(String.fromCodePoint(i))){
alpha.push(String.fromCodePoint(i))
}
}
// s배열의 각 요소의 인덱스에 +index한 값으로 alpha배열에서 해당하는 요소 찾아 result만들기
let result = ''
for (let i = 0; i < s.length; i++){
const idx = alpha.indexOf(s[i])
// 인덱스가 배열을 벗어날 경우를 대비해 나머지로 인덱스 찾기
result += alpha[(idx + index) % alpha.length]
}
return result;
}
리뷰
문제를 설명한 길이에 비해 어렵지 않은 문제인데
skip 배열에 있는 문자들은 전부 제외한 알파벳 배열을 생성하고 s 배열의 각 요소의 인덱스에 +index 한 값으로 알파벳 배열에서 찾아서 합치면 끝!
'Programmers' 카테고리의 다른 글
[프로그래머스][JS] 짝지어 제거하기 ✅ (0) | 2023.07.21 |
---|---|
[프로그래머스][JS] 연속된 수의 합 ✅ (0) | 2023.07.21 |
[프로그래머스][JS] 캐릭터의 좌표 (0) | 2023.07.20 |
[프로그래머스][JS] 안전지대 (0) | 2023.07.19 |
[프로그래머스][JS] [1차] 비밀지도 (0) | 2023.07.19 |