BOJ 11655 ROT13
- 문제 링크
https://www.acmicpc.net/problem/11655
- 문제 해설
입력 받은 문자열에서 알파벳 대문자, 소문자의 경우만 13글자씩 밀어서 표현하면 된다.
신경써야하는 부분은 14번째 알파벳 n부터는 13글자를 밀면 z를 지나 다시 a로 돌아가서 밀린다는 것이다.
char형 배열 ans을 만들어 입력 받은 문자열을 담았다.
그 후, 문자열을 문자 하나씩 검사하면서 위 내용들을 구현하였다.
- 코드 보기
import java.io.*;
public class Main
{
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 str = br.readLine();
char[] ans = new char[str.length()];
for (int i = 0; i < str.length(); i++)
{
ans[i] = str.charAt(i);
if ((ans[i] >= 'a' && ans[i] <= 'm') || (ans[i] >= 'A' && ans[i] <= 'M'))
ans[i] += 13;
else if ((ans[i] >= 'n' && ans[i] <= 'z') || (ans[i] >= 'N' && ans[i] <= 'Z'))
ans[i] -= 13;
}
for (int i = 0; i < str.length(); i++)
bw.write(Character.toString(ans[i]));
br.close();
bw.flush();
bw.close();
}
}
'PS > BOJ' 카테고리의 다른 글
BOJ 1406 에디터 [Java] (0) | 2021.07.22 |
---|---|
BOJ 11656 접미사 배열 [Java] (0) | 2021.07.22 |
BOJ 10820 문자열 분석 [Java] (0) | 2021.07.21 |
BOJ 10809 알파벳 찾기 [Java] (0) | 2021.07.21 |
BOJ 10808 알파벳 개수 [Java] (0) | 2021.07.21 |