내가 푼 정답
function solution(s, n) {
var answer = "";
let order = [
"a",
"b",
"c",
"d",
"e",
"f",
"g",
"h",
"i",
"j",
"k",
"l",
"m",
"n",
"o",
"p",
"q",
"r",
"s",
"t",
"u",
"v",
"w",
"x",
"y",
"z",
];
s = s.split("");
for (i = 0; i < s.length; i++) {
if (s[i] !== " ") {
if (s[i] === s[i].toLowerCase()) {
s[i] =
order[
order.indexOf(s[i]) + n > 25
? order.indexOf(s[i]) + n - 26
: order.indexOf(s[i]) + n
];
} else {
s[i] =
order[
order.indexOf(s[i].toLowerCase()) + n > 25
? order.indexOf(s[i].toLowerCase()) + n - 26
: order.indexOf(s[i].toLowerCase()) + n
].toUpperCase();
}
}
}
return s.join("");
}
prettier떄문에 배열이 길쭉해졌다ㅋㅋㅋㅋ 아무튼 알파벳 순서가 담긴 배열을 활용하여 n칸씩 인덱스를 미는 식으로 알고리즘을 짜보았다.
'알고리즘' 카테고리의 다른 글
[코딩테스트] 알고리즘 문제풀이 전략 (0) | 2025.02.25 |
---|---|
[알고리즘 문제] 하샤드 수 (1) | 2022.11.23 |
[알고리즘 문제] 신규 아이디 추천 (0) | 2022.11.23 |
[알고리즘 문제] 소수 만들기 (0) | 2022.11.23 |
[알고리즘 문제] 문자열 내림차순으로 배치하기 (0) | 2022.11.23 |