-
백준 11655 ROT13 문제풀이 ( Java )Problem Solving/Java 2019. 10. 21. 20:28반응형12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849public class Rot13 {public static void main(String[] args) throws IOException {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));String input = br.readLine();for (int i = 0; i < input.length(); i++) {if (input.charAt(i) >= 'a' && input.charAt(i) <= 'z') {// 소문자일 경우if ('z' < input.charAt(i) + 13) {// 13 옮겼을 때 알파벳 소문자의 범위를 벗어나면// 차이만큼 a-1부터 다시 더해서 출력} else {// 아니면// 그냥 출력}} else if (input.charAt(i) >= 'A' && input.charAt(i) <= 'Z') {// 대문자일 경우if ('Z' < input.charAt(i) + 13) {// 13 옮겼을 때 알파벳 대문자의 범위를 벗어나면// 상동} else {// 아니면}} else {// 소문자나 대문자 아니면 그냥 출력bw.write(input.charAt(i));}}}}
풀고보니 a 부터 m 사이 범위면 13을 더하고 n부터 z 사이 범위면 13을 빼는 방법도 있더라
반응형'Problem Solving > Java' 카테고리의 다른 글
백준 2609번 최대공약수와 최소공배수 문제풀이 ( Java ) (0) 2019.10.22 백준 11656번 접미사 배열 문제 풀이 ( Java ) (0) 2019.10.21 백준 10820번 문자열 분석 문제 풀이 ( Java ) (0) 2019.10.21 백준 10809번 알파벳 찾기 문제 풀이 ( Java ) (0) 2019.10.21 백준 10808번 알파벳 개수 문제 풀이 ( Java ) (0) 2019.10.21