Python
벼락치기 코딩테스트 - 암호해독!
winter126
2025. 2. 28. 23:13
🏝 암호를 해독하라! 알고리즘 제왕의 비밀
알고리즘 제왕 파이와 썬은 모든 알고리즘을 해독할 수 있는 7개의 원석을 가진 인물이었다. 그
는 죽기 전, 이 보물을 ‘암호’로 보호하고 세계 어딘가에 숨겼다. 그리고 남긴 단서는 단 하나였다.
📌 "섬으로 향하라!"
그가 남긴 메시지는 다음과 같다.
' + -- + - + - '
' + --- + - + '
' + -- + - + - '
' + - + - + - + '
🔍 암호 해독 과정
- +는 1, -는 0으로 변환한다.
- 변환된 이진수를 십진수(ASCII 코드)로 변환한다.
- 변환된 숫자를 문자로 변환하여 해독한다.
📌 Python 코드로 구현하면 다음과 같다.
text = [' + -- + - + - ',
' + --- + - + ',
' + -- + - + - ',
' + - + - + - + ']
l = []
for i in text:
l.append(chr(int(i.strip().replace(' ', '').replace('+', '1').replace('-','0'), 2)))
print(''.join(l))
🏆 해독 결과
이 코드를 실행하면 **'JEJU'**라는 문자가 출력된다! 즉, 보물이 숨겨진 곳은 바로 제주도(Jeju)!
📌 코드 해석
- strip()을 사용해 양쪽 공백 제거
- replace(' ', '')로 중간 공백 제거
- replace('+', '1').replace('-', '0')로 이진수 변환
- int(이진수, 2)로 십진수 변환
- chr(숫자)로 문자 변환
- 모든 문자들을 ''.join(l)로 연결하여 최종 문자열 출력
이처럼 이진수 변환과 ASCII 코드 활용을 통해 숨겨진 메시지를 해독할 수 있다!
눈떠보니 코딩테스트 전날 강의 | 제주코딩베이스캠프 - 인프런
제주코딩베이스캠프 | , [사진] [사진][사진][사진] 혹시 다들 이런 경험 없으신가요?눈떠보니 바로 다음날이 코딩 테스트 .. !! 😱 그래서 제주코딩베이스캠프가 준비했습니다! 기본적으
www.inflearn.com