반응형

ROT13 암호화는 문자열에 있는 대문자나 소문자를 찾으면 해당 알파벳의 ASCII코드에서 13번째 뒤 문자를 출력하는 암호화 방식이다.
크게 어렵지 않은 알고리즘이라(심지어 브론즈) 아마 다들 어렵지 않게 풀었을 것이다.
import java.io.*;
public class ROT13_11655 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
String s = br.readLine();
for (int i=0; i<s.length(); i++) {
char c = s.charAt(i);
if ('A' <= c && c <= 'Z') { // 대문자인 경우
int tmp = (int)c + 13; // 13번째 뒤의 문자를 뽑음
if (tmp > 'Z') { // 그러나 Z를 넘어가는 경우
tmp -= 26; // A부터 다시 돌린다
}
sb.append((char)tmp);
} else if ('a' <= c && c <= 'z') { // 소문자인 경우
int tmp = (int)c + 13; // 13번째 뒤의 문자를 뽑음
if (tmp > 'z') { // 그러나 z를 넘어가는 경우
tmp -= 26; // a부터 다시 돌린다
}
sb.append((char)tmp);
} else {
sb.append(c);
}
}
System.out.print(sb);
br.close();
}
}
로그인
www.acmicpc.net
작성일자: 2023-09-08
'컴퓨터 공학 > 백준' 카테고리의 다른 글
[백준] JAVA 자바 : 접미사 배열 (11656번) (0) | 2024.01.21 |
---|---|
[백준] JAVA 자바 : 네 수 (10824번) (0) | 2024.01.21 |
[백준] JAVA 자바 : 문자열 분석 (10820번) (0) | 2024.01.20 |
[백준] JAVA 자바 : 알파벳 찾기 (10809번) (0) | 2024.01.20 |
[백준] JAVA 자바 : 알파벳 개수 (10808번) (0) | 2024.01.20 |