[프로그래머스]대충 만든 자판/python

Effy_ee·2023년 10월 19일
0

코딩테스트

목록 보기
75/118

👾(Lv.01) 대충 만든 자판
https://school.programmers.co.kr/learn/courses/30/lessons/160586

이중루프 시간초과🫠

INF=100000000

def solution(keymap, targets):
    answer = []
    alphas=[INF]*(30)
    index=0
    for key in keymap:
        for i in range(len(key)):
            index+=1
            if alphas[ord(key[i])-65]>index:
                alphas[ord(key[i])-65]=index
        index=0
        
    indexx=0
    for target in targets:
        for j in range(len(target)):
            if alphas[ord(target[j])-65]==INF:
                return [-1]
            indexx+=alphas[ord(target[j])-65]
        answer.append(indexx)
        indexx=0
    
    return answer

🖥️ 답안

INF = 100000000

def solution(keymap, targets):
    answer = []
    alphas = [INF] * 30
    index = 0
    
    for key in keymap:
        for char in key:
            index += 1
            if alphas[ord(char) - 65] > index:
                alphas[ord(char) - 65] = index
        index = 0

    
    for target in targets:
        total_presses = sum(alphas[ord(char) - 65] for char in target)
        
        if INF in [alphas[ord(char) - 65] for char in target]:
            answer.append(-1)
        else:
            answer.append(total_presses)
    
    return answer

0개의 댓글