본문 바로가기
알고리즘

[프로그래머스 - 시저 암호][파이썬] - 8일차

by Jyujae 2022. 6. 2.

https://programmers.co.kr/learn/challenges


key point: chr, ord/ %26 로직

 

1. chr, ord

아스키 코드를 모르면 풀 수가 없다

chr() 숫자 -> 문자열

ord() 문자열 -> 숫자

 

2. %26 로직

ex)

z에서 n=4이면 d를 출력해줘야한다.

리스트가 반복적으로 넘어가면서(?) 돌아가야함

-> 즉, n을 더했을때 가장 마지막 문자의 아스키코드보다 커질 수 있다는 점이다

그래서 %26(a~z)길이로 나눠주고, 대문자는 ord('A') 만큼의 수를, 소문자는 ord('a')만큼의 수를 더해주는 것이다

 

위의 예시를 그대로 가져와서,

z-> 122, n=4

(122-97+4)%26=3

3+97=100

100 -> d