코딩 정복 가즈아~
Home
  • 분류 전체보기 (159)
    • 알고리즘 풀이 (149)
      • 프로그래머스 (89)
      • 백준 (59)
    • 취준 일기 (6)
    • 네트워크 정리 (1)
Home
  • 분류 전체보기 (159)
    • 알고리즘 풀이 (149)
      • 프로그래머스 (89)
      • 백준 (59)
    • 취준 일기 (6)
    • 네트워크 정리 (1)
블로그 내 검색

코딩 정복 가즈아~

(っ◔◡◔)っ ♥ 2021 취뽀하자!! ♥

  • 알고리즘 풀이/프로그래머스

    [level1] 프로그래머스 - 시저 암호(JAVA)

    2021. 8. 31.

    by. 데롱디롱

    728x90

    - 공백이면, 그냥 공백 그대로 더하고

    - 소문자 이면서, n만큼 뒤로 간 것이 'z'를 넘어간 경우 =>  'z'를 벗어난 만큼의 크기를 다시 'a'부터 가주면 된다.

    'z'를 벗어난 만큼의 크기 = 문자 - 'z'

    'a' 부터  [ 'z'를 벗어난 만큼의 크기  ]을 가는 법 = 'a' + ( 문자 - 'z' ) -1 을 해준다.
       ㄴ 'a'부터이기 때문에 -1을 꼭 해주어야 한다.

    - 대문자도 같은 원리로 해준다.

     

     

    class Solution {
        public String solution(String s, int n) {
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < s.length(); i++) {
    
                if (s.charAt(i) == ' ') {
                    sb.append(" ");
                    continue;
                }
    
                char c = (char) (s.charAt(i) + n);
    
                if (c > 'z' && s.charAt(i) <= 'z')
                    c = (char) (c - 'z' + 'a' - 1);
                else if (c > 'Z' && s.charAt(i) <= 'Z')
                    c = (char) (c - 'Z' + 'A' - 1);
    
                sb.append(c);
            }
    
            return sb.toString();
        }
    }
    저작자표시 (새창열림)

    '알고리즘 풀이 > 프로그래머스' 카테고리의 다른 글

    [level1] 프로그래머스 - 이상한 문자 만들기(JAVA)  (0) 2021.08.31
    [level1] 프로그래머스 - 약수의 합(JAVA)  (0) 2021.08.31
    [level1] 프로그래머스 - 문자열을 정수로 바꾸기(JAVA)  (0) 2021.08.31
    [level1] 프로그래머스 - 수박수박수박수박수박수?(JAVA)  (0) 2021.08.31
    [level1] 프로그래머스 - 소수 찾기(JAVA)  (0) 2021.08.31

    댓글

    관련글

    • [level1] 프로그래머스 - 이상한 문자 만들기(JAVA) 2021.08.31
    • [level1] 프로그래머스 - 약수의 합(JAVA) 2021.08.31
    • [level1] 프로그래머스 - 문자열을 정수로 바꾸기(JAVA) 2021.08.31
    • [level1] 프로그래머스 - 수박수박수박수박수박수?(JAVA) 2021.08.31
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

피할 수 없다면, 순간을 즐겨라

Designed by Nana
블로그 이미지
데롱디롱
희희.. (๑′ᴗ‵๑)

티스토리툴바