관측소 무전기는 글자를 한 칸씩 밀어 보내는 대신, 글자를 보낼 때마다 로터가 한 칸씩 더 돌아갑니다.
그래서 문자열 s 의 i 번째 문자(0부터 시작)에 적용되는 밀기 폭은 n + i 가 됩니다.
전송할 원문 s 와 로터의 초기값 n 이 주어질 때, 암호화된 통신문을 반환하세요.
i 번째 문자가 알파벳이면 알파벳 순서로 n + i 칸 뒤로 밉니다.z 다음은 a 로, Z 다음은 A 로 돌아옵니다. 대문자는 대문자로, 소문자는 소문자로 유지됩니다.-)는 밀지 않고 그대로 둡니다. 단, 위치 i 는 그런 문자도 포함해서 셉니다.solution(s: string, n: number): string| s | n | 반환값 |
|---|---|---|
"CODE" |
0 |
"CPFH" |
"zzzz" |
1 |
"abcd" |
"night owl" |
5 |
"sonpc ziy" |
"Route 66" |
13 |
"Ecjjv 66" |
"CODE", n=0 의 계산 과정 (밀기 폭이 0, 1, 2, 3 으로 커집니다):
C + 0 = C
O + 1 = P
D + 2 = F
E + 3 = H"Route 66", n=13 에서는 공백과 숫자가 그대로 남지만, 그 자리도 위치 계산에는 포함됩니다.
-) 으로 구성됩니다n + i 가 26 이상이면 26 으로 나눈 나머지만큼 민 것과 같습니다시간 복잡도 목표: O(N)
▶ 실행은 기록 없이 채점만, 제출은 결과가 진행률·오답노트에 기록됩니다.