99클럽 코테 스터디 24일차 TIL : 그래프

박지원·2024년 8월 14일

99클럽 코테 스터디

목록 보기
20/25
post-thumbnail

오늘의 학습 키워드

그래프

공부한 내용 본인의 언어로 정리하기

프로그래머스 대충 만든 자판

어떤 문제가 있었고, 나는 어떤 시도를 했는지

def solution(keymap, targets):
    answer = [0] * len(targets)
    key_count = 0
    
    for word in range(len(targets)):
        for i in targets[word]:
            key_count = 0
            for key in keymap:
                if i in key:
                    if key_count != 0:
                        if key_count >= key.index(i) + 1:
                            key_count = key.index(i) + 1
                    else:
                        key_count = key.index(i) + 1          
                else:
                    continue 
            if key_count == 0:
                answer[word] = -1
            else:
                if answer[word] != -1:
                    answer[word] += key_count
    

    return answer
  • targets 을 보면서 입력 문제를 하나씩 가져오고
  • 문자문자의 한 글자씩 반복문으로 가져와서 (i)
  • keymap 을 반복해서 해당 글자의 인덱스를 체크하는 구조
  • 만약에 index 를 비교했을 때 더 작은 index 가 있다면 그 인덱스 + 1 로 설정해서 append 하는 방법

무엇을 새롭게 알았는지

  • 사실 이 문제를 풀면서 삼중 반복문을 바로 떠올렸을때, 시간 초과나 런타임 에러가 나지 않을까하고 다른 풀이 접근 방식을 찾아보았다
  • 우선 에러를 겁먹지 말고 구현해보는게 중요한 것 같다

학습할 것은 무엇인지

  • 그래프 알고리즘

0개의 댓글