브론즈1 : 구현 문제이다.
풀이
단순한 문제이다. 앞뒤에 어떠한 문자를 넣을 수 있으니, 현재 가지고 있는 ROT13만 가지고서 부분적으로 보았을 때, 가장 작은 차이를 가지고 있는 지점만 알면된다. 이후는 맞춰서 끼워넣으면 되니까.
Code
import string
a = input()
alphabet_lower = string.ascii_lowercase
alphabet_upper = string.ascii_uppercase
ret_string = ""
for char in a:
if char in alphabet_lower:
pos = alphabet_lower.find(char)
char = alphabet_lower[(pos + 13) % len(alphabet_lower)]
elif char in alphabet_upper:
pos = alphabet_upper.find(char)
char = alphabet_upper[(pos + 13) % len(alphabet_upper)]
ret_string += char
print(ret_string)