카테고리 없음

[Lv. 1] 시저암호

녱녱 2023. 10. 2.

목차

[Lv. 1] 시저암호 - undefined - 모든 영역

import java.util.*;
class Solution {
    public String solution(String s, int n) {
        String answer = "";
        char[] arr = s.toCharArray();
        for(char c : arr){
            if(c == ' ') answer += " ";
            else{
                if (c >= 'a' && c <= 'z'){
                    c = (char)(c + n);
                    if(c > 'z') c -= 26;
                }else if( c >= 'A' && c <= 'Z'){
                    c = (char)(c+n);
                    if(c > 'Z') c-= 26;
                }
                answer += c;
            }
        }
        return answer;
    }
}

1. 문자열을 문자 단위로 처리하기 위해 입력받은 문자열 's'를 문자 배열로 변환

2. 문자열의 각 문자들에 대해 반복문을 돌면서

3. 공백 문자라면 그대로 결과 문자열에 추가함

4. 공백 문자가 아닌경우 c를 n 만큼 시저 암호 방식으로 이동시킴, z가 넘어갈경우 다시 a 부터 시작하도록 함 -> 대/소문자일 경우로 나눠 동일 로직 적용

5. 처리된 문자를 answer에 추가

댓글