백준

틀린 코드첫번째 시도n = int(input())alpha = []length = []for _ in range(n): s = input() alpha.append(s) length.append(len(s))alpha.sort(key=lambda x:len(x), reverse=True)dict = {}num = 9def alpha_to_int(a, next): global num length = len(a) for i in a: if next  단어 길이를 순차적으로 탐색하면서 길이가 가장 긴 문자열한테 큰 수부터 차례대로 할당해주고 그다음 길이간 긴 문자열한테 할당해주고... 이런식으로 했는데 이렇게 접근하니까 답도 안나오고, 너무 복잡하게 생각했나 싶어서 다른 코드를 찾고하였..
이코테에서 효율적인 화폐 구성 문제와 비슷해서 비슷한 풀이로 풀 수 있었다.첫번째 코드n = int(input())#설탕이 최대 5000이므로 data = [5001] * (n+1)bag = [3, 5]for i in bag: if i > n: continue data[i] = 1#배열 n에...3키로,, 5키로for k in bag: for i in range(k, n+1): if data[i-k] != 5001: #가방 단위로 배달 가능하면... data[i] = min(data[i], data[i-k]+1)if data[n] != 5001: print(data[n])else: print(-1) 이전에 이 문제를 푼 코드가 있어서 확인해 봤더니 이전에 푼 코드가 더 빠르고..
hapBday
'백준' 태그의 글 목록