
-Code
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class BOJ34364 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
String s = st.nextToken();
int shift = 1;
StringBuffer sb = new StringBuffer();
for (char c : s.toCharArray()) {
int decode = (c - 'A' + shift) % 26 + 'A';
sb.append((char) decode);
shift = (shift * 2) % 26;
}
System.out.println(sb);
}
}
shift도 너무 커지면 int의 범위를 넘어서기 때문에 틀렸어서 해당 부분을 26의 나머지로 지정해야 했습니다.
'Beakjoon&프로그래머스 > Java' 카테고리의 다른 글
| [백준/Java] 34382번 Weather Nodes (0) | 2025.10.18 |
|---|---|
| [백준/Java] 34366번 Mines Football (0) | 2025.10.17 |
| [백준/Java] 34437번 Number Reduction (0) | 2025.10.15 |
| [백준/Java] 34310번 No Stragglers (0) | 2025.10.14 |
| [프로그래머스/Java] 2 x n 타일링 (0) | 2025.10.13 |