title: "[프로그래머스] 대충 만든 자판 Python 파이썬 해설 (Level 1) - 이도훈"
cleanUrl: "programmers/160586"
description: "프로그래머스 Level 1 문제 [대충 만든 자판]의 풀이를 정리합니다."

문제 설명 및 제한사항

아이디어 및 해결 방법

코드

def solution(keymap, targets):
    num_presses = {}
    for keys in keymap:
        for i, c in enumerate(keys, 1):
            if c in num_presses:
                num_presses[c] = min(num_presses[c], i)
            else:
                num_presses[c] = i

    answer = []
    for target in targets:
        unable = False
        s = 0
        for c in target:
            if c not in num_presses:
                unable = True
                break
            else:
                s += num_presses[c]

        if unable:
            answer.append(-1)
        else:
            answer.append(s)

    return answer

출처

프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/challenges