DevKim

[Python] 백준 #11655 ROT13 본문

알고리즘 PS

[Python] 백준 #11655 ROT13

on_doing 2021. 1. 14. 19:46
728x90

www.acmicpc.net/problem/11655

 

11655번: ROT13

첫째 줄에 알파벳 대문자, 소문자, 공백, 숫자로만 이루어진 문자열 S가 주어진다. S의 길이는 100을 넘지 않는다.

www.acmicpc.net

ord 와 chr을 이용해 구함

s=input()
s=list(s)
for j in range(len(s)):
    i=s[j]

    #대문자의 경우
    if ord(i)>=65 and ord(i) <=90: #대문자인 경우
        k=ord(i)+13 #13글자씩 밀어
        if k>=65 and k <=90: #밀어낸게 대문자
            s[j]=chr(ord(i)+13)
        else: #대문자 범위 벗어남
            s[j]=chr(ord(i)-13)
            
    #소문자의 경우
    elif ord(i) >=97 and ord(i) <=122:
        k=ord(i)+13 #13글자씩 밀어
        if k>=97 and k <=122: #밀어낸게 소문자
            s[j]=chr(ord(i)+13)
        else: #소문자 범위 벗어남
            s[j]=chr(ord(i)-13)
        
print(''.join(s)) 
728x90
Comments