본문 바로가기

코딩테스트

[프로그래머스] 둘만의 암호

[Lv.1] 정답율 50%

https://school.programmers.co.kr/learn/courses/30/lessons/155652

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

[풀이]

- string 모듈을 통해 영어 소문자를 알파벳 순으로 불러올 수 있다.

import string
alphabet_list = list(string.ascii_lowercase)

 

[코드]

import string
def solution(s, skip, index):
    alphabet_list = list(string.ascii_lowercase)
    answer = []
    for al in s :
        al_idx = alphabet_list.index(al)
        for _ in range(index) :
            while True :
                if al_idx >= len(alphabet_list) - 1 :
                    al_idx = 0
                else :
                    al_idx += 1
                
                if alphabet_list[al_idx] not in skip :
                    break
        answer.append(alphabet_list[al_idx])
    return ''.join(answer)