11365. !밀비 급일
당신은 길을 가다가 이상한 쪽지를 발견했다. 그 쪽지에는 암호가 적혀 있었는데, 똑똑한 당신은 암호가 뒤집으면 해독된다는 것을 발견했다. 이 암호를 해독하는 프로그램을 작성하시오.
입력 : 한 줄에 하나의 암호가 주어진다. 암호의 길이는 500을 넘지 않는다. 마지막 줄에는 "END"가 주어진다.
(END는 해독하지 않는다.)
출력 : 각 암호가 해독된 것을 한 줄에 하나씩 출력한다.
ex)
입력 :
!edoc doog a tahW
noitacitsufbo
erafraw enirambus detcirtsernu yraurbeF fo tsrif eht no nigeb ot dnetni eW
lla sees rodroM fo drol eht ,ssertrof sih nihtiw delaecnoC
END
출력 :
What a good code!
obfustication
We intend to begin on the first of February unrestricted submarine warfare
Concealed within his fortress, the lord of Mordor sees all
풀이
passwd_list = []
while True:
passwd = input()
passwd_list.append(passwd)
if passwd == 'END':
break
for i in range(0, len(passwd_list)-1, 1):
print(passwd_list[i][::-1], end='\n')
- 쪽지에 적힌 암호의 분량을 알 수 없으므로 while True 즉, 무한루프를 사용했다.
쪽지의 암호를 한 줄씩 입력받아 passwd_list에 추가했고, 만약 입력받은 암호인 passwd가 END이면 무한루프를 종료하도록 break를 사용했다.
그리고 각각의 암호를 한 줄에 하나씩 출력하기 위해 반복문을 사용했는데,
이때 마지막 줄에 주어진 'END'는 해독하지 않기 때문에
passwd_list의 마지막 요소를 제외한 모든 범위를 반복하는 반복문을 사용하여 각각의 암호를 출력하게 했고, 암호를 뒤집어 해독하기 때문에 슬라이스 범위를 [::-1] 로 지정하여 문자열을 모두 반대로 뒤집어 출력하게 했다.
'코딩테스트 문제풀이(Python)' 카테고리의 다른 글
백준 10808번 문제풀이 (파이썬) (0) | 2022.05.27 |
---|---|
백준 4458번 문제풀이 (파이썬) (0) | 2022.05.27 |
백준 11654번 문제풀이 (파이썬) (0) | 2022.05.26 |
백준 9086번 문제풀이 (파이썬) (0) | 2022.05.24 |
백준 10821번 문제풀이 (파이썬) (0) | 2022.05.24 |