문제
문제해결
- char 형은 아스키코드로 되어있기 때문에 간단하게 += 13을 해주면 된다
- z, Z를 넘어가는 경우는 범위를 벗어나는 경우이므로 범위를 벗어나는 만큼 a, A에서 더해주면 된다
import java.util.Scanner;
public class B11655 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (c>='a' && c<='z'){
c += 13;
if (c>'z'){
int tmp = c - 'z';
c = 'a'-1;
c += tmp;
}
} else if (c>='A' && c<='Z'){
c += 13;
if (c>'Z'){
int tmp = c - 'Z';
c = 'A'-1;
c += tmp;
}
}
sb.append(c);
}
System.out.println(sb);
}
}
'[알고리즘] > 백준' 카테고리의 다른 글
백준 11656 자바 - 접미사 배열 (0) | 2021.06.26 |
---|---|
백준 10824 자바 - 네 수 (0) | 2021.06.26 |
백준 10820 자바 - 문자열 분석 (0) | 2021.06.25 |
백준 10809 자바 - 알파벳 찾기 (0) | 2021.06.24 |
백준 10808 자바 - 알파벳 개수 (0) | 2021.06.24 |