728x90

https://programmers.co.kr/learn/courses/30/lessons/12926#

출처 : 프로그래머스

 

코딩테스트 연습 - 시저 암호

어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀

programmers.co.kr


def solution(s, n):
    s = list(s)
    for i in range(len(s)):
        if s[i].isupper(): # 대문자면
            s[i] = chr( (ord(s[i])-ord('A')+n) % 26 + ord('A'))
        elif s[i].islower() : # 소문자면
            s[i] = chr( (ord(s[i])-ord('a')+n) % 26 + ord('a'))
    return ''.join(s)

풀이

아스키코드를 활용한 파이썬 함수로 풀이했다.

이 부분은 아직 버벅이니 몇번더 풀어보자.

  • chr() :  아스키코드를 해당하는 문자열로 반환
  • ord() : 문자열에 해당하는 아스키코드 반환

+ Recent posts