파이썬

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 시간 초과^^ def solution(sequence, k): # 합 배열 s = [0] * (len(sequence)+1) for n in range(1, (len(sequence)+1)): s[n] = s[n-1] + sequence[n-1] # 구간 합 answer = [] min_len = 1000001 for i in range(len(sequence)+1): for j in range(i, len(sequence)+1): if s[j] - s[i-1] == k and j-i < min_len: if..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 단순한 큐를 이용한 문제라 생각하고 접근했으나 조건들로 인해 실패했던 과정을 하나하나 코드와 함께 작성했다. 발생할 수 있는 모든 경우를 겪고 정리했으니 다들 여기서 해답을 찾으시길 바랍니다! 시행착오 1 from collections import deque def solution(queue1, queue2): queue1, queue2 = deque(queue1), deque(queue2) answer = 0 # 원소는 정수이므로 두 큐의 합이 홀수이면 어떻게 해도 각 큐의 합을 정수로 같게 만들 수 없음(..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(bridge_length, weight, truck_weights): bridge = [0] * bridge_length # 다리 onbridge = sum(bridge) # 다리 위 트럭 하중 answer = 0 # 시간 # 다리 위의 트럭이 없을 때까지(=모든 트럭이 다리를 건널 때 까지) while bridge: answer += 1 onbridge -= bridge.pop(0) # 맨 앞에 위치한 트럭이 다리를 지나면 하중 감소 # 남은 대기 트럭이 있으면 if truck_..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 처음 시도한 코드 def solution(topping): answer = 0 for i in range(1,len(topping)): left = set(topping[:i]) right = set(topping[i:]) if len(left)==len(right): answer += 1 return answer 토핑의 가짓수를 구해야 하므로 호기롭게 set으로 코드를 작성하고 제출했지만 마주친 결과는 시간초과였다. 어떻게 시간초과를 해결해야 할지 모르겠어서 힌트를 찾아본 결과 딕셔너리를 이용하면 시간을 줄..
· TIL/python
집합에서 곱집합 또는 데카르트 곱은 각 집합의 원소를 성분으로 하는 튜플들의 집합을 말한다. 쉽게 말해, 두 집합 A = {1, 2}, B = {3, 4}가 있을 때 A의 원소와 B의 원소를 곱해 나올 수 있는 모든 경우의 수를 담고 있는 집합 {3, 4, 6, 8}이다. 경우의 수는 사칙연산으로 쉽게 구할 수 있지만, 집합을 구하기 위해서는 itertools 라이브러리의 product를 사용한다. 순열과 조합을 구하는 permutations, combinations과 사용법은 동일하다. product(A, B)로 A, B에 iterable한 객체를 전달하면 A와 B의 원소들을 가지고 만들 수 있는 모든 경우의 수를 보여준다. 다음은 숫자 리스트와 문자열로 product를 사용한 예이다. 의도한 바대로 ..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 import heapq def solution(scoville, K): answer = 0 # 섞은 횟수 heapq.heapify(scoville) # 최소 heap # 새로운 스코빌 지수 계산이 가능할 때(len >= 2) while len(scoville) >= 2: min1 = heapq.heappop(scoville) # 최소값이 K 이상이면 조건을 만족하므로 반복문 종료 if min1 >= K: return answer # 최소값이 K 미만이면 새로운 스코빌 지수 계산 else: min2 = h..
dduniverse
'파이썬' 태그의 글 목록 (2 Page)