프로그래머스 - 둘만의 암호

youngkyu MIn·2023년 12월 20일
0

문제링크 - 프로그래머스 - 둘만의 암호

class Solution {
    public String solution(String s, String skip, int index) {


        StringBuilder result = new StringBuilder();
        for (char c : s.toCharArray()) {
            for (int i = 0; i < index; ) {
                c = (char) ((c - 'a' + 1) % 26 + 'a');
                if (skip.indexOf(c) == -1) {
                    i++;
                }
            }
            result.append(c);
        }
        return result.toString();

    }
}

c = (char) ((c - 'a' + 1) % 26 + 'a');

s 에서 잘라온 char c 에 대해

아스키 코드 값이 아니라 a = 1, b = 2, ... 와 같이 변환하고 1을 더해 뒤로 이동시킨 뒤 다시 아스키코드 값으로 만듦. 26으로 나눈 나머지로써 z 이후 다시 a 로 순환시킴.

알파벳 이동시키는 문제에서 쓰면 좋겠네~

profile
한 줄 소개

0개의 댓글

관련 채용 정보