programmers.co.kr/learn/courses/30/lessons/42626
from collections import deque
def solution(scovilles, K):
answer = 0
while True :
scovilles.sort()
scoville = deque(scovilles)
if scoville[0] >= K : return answer
a, b = scoville.popleft(), scoville.popleft()
scoville.append(a+b*2)
scovilles = list(scoville)
answer+=1
정확성 테스트
테스트 1 〉 | 실패 (런타임 에러) |
테스트 2 〉 | 통과 (0.01ms, 10.2MB) |
테스트 3 〉 | 실패 (런타임 에러) |
테스트 4 〉 | 통과 (0.01ms, 10.2MB) |
테스트 5 〉 | 통과 (0.01ms, 10.2MB) |
테스트 6 〉 | 통과 (2.92ms, 10.2MB) |
테스트 7 〉 | 통과 (2.38ms, 10.2MB) |
테스트 8 〉 | 실패 (런타임 에러) |
테스트 9 〉 | 통과 (0.12ms, 10.1MB) |
테스트 10 〉 | 통과 (2.00ms, 10.2MB) |
테스트 11 〉 | 통과 (0.74ms, 10.2MB) |
테스트 12 〉 | 통과 (6.45ms, 10.2MB) |
테스트 13 〉 | 통과 (2.71ms, 10.2MB) |
테스트 14 〉 | 실패 (런타임 에러) |
테스트 15 〉 | 통과 (3.98ms, 10.1MB) |
테스트 16 〉 | 통과 (0.01ms, 10.3MB) |
효율성 테스트
테스트 1 〉 | 실패 (시간 초과) |
테스트 2 〉 | 실패 (시간 초과) |
테스트 3 〉 | 실패 (시간 초과) |
테스트 4 〉 | 실패 (시간 초과) |
테스트 5 〉 | 실패 (시간 초과) |
채점 결과
정확성: 57.1
효율성: 0.0
합계: 57.1 / 100.0
바로 heapq 사용
정확성은 똑같이 틀렸지만, 효율성은 다 통과
import heapq
def solution(scovilles, K):
heapq.heapify(scovilles)
answer = 0
while True :
if scovilles[0] >= K : return answer
a,b = heapq.heappop(scovilles), heapq.heappop(scovilles)
heapq.heappush(scovilles, a+b*2)
answer += 1
정확성 테스트
테스트 1 〉 | 실패 (런타임 에러) |
테스트 2 〉 | 통과 (0.01ms, 10.2MB) |
테스트 3 〉 | 실패 (런타임 에러) |
테스트 4 〉 | 통과 (0.01ms, 10.2MB) |
테스트 5 〉 | 통과 (0.01ms, 10.2MB) |
테스트 6 〉 | 통과 (0.68ms, 10MB) |
테스트 7 〉 | 통과 (0.57ms, 10.2MB) |
테스트 8 〉 | 실패 (런타임 에러) |
테스트 9 〉 | 통과 (0.06ms, 10.2MB) |
테스트 10 〉 | 통과 (0.51ms, 10.2MB) |
테스트 11 〉 | 통과 (0.24ms, 10.2MB) |
테스트 12 〉 | 통과 (1.17ms, 10.1MB) |
테스트 13 〉 | 통과 (0.55ms, 10.2MB) |
테스트 14 〉 | 실패 (런타임 에러) |
테스트 15 〉 | 통과 (0.89ms, 10.2MB) |
테스트 16 〉 | 통과 (0.01ms, 10.2MB) |
효율성 테스트
테스트 1 〉 | 통과 (181.44ms, 16.2MB) |
테스트 2 〉 | 통과 (366.70ms, 21.9MB) |
테스트 3 〉 | 통과 (1889.12ms, 49.7MB) |
테스트 4 〉 | 통과 (136.85ms, 14.9MB) |
테스트 5 〉 | 통과 (1910.40ms, 51.8MB) |
채점 결과
정확성: 57.1
효율성: 23.8
합계: 81.0 / 100.0
|
이걸 안 봄
import heapq
def solution(scovilles, K):
heapq.heapify(scovilles)
answer = 0
while True :
if scovilles[0] >= K : return answer
if len(scovilles) < 2 : return -1
a,b = heapq.heappop(scovilles), heapq.heappop(scovilles)
heapq.heappush(scovilles, a+b*2)
answer += 1
정확성 테스트
테스트 1 〉 | 통과 (0.01ms, 10.2MB) |
테스트 2 〉 | 통과 (0.01ms, 10.3MB) |
테스트 3 〉 | 통과 (0.01ms, 10.2MB) |
테스트 4 〉 | 통과 (0.01ms, 10.2MB) |
테스트 5 〉 | 통과 (0.01ms, 10.2MB) |
테스트 6 〉 | 통과 (0.79ms, 10.1MB) |
테스트 7 〉 | 통과 (0.71ms, 10.2MB) |
테스트 8 〉 | 통과 (0.08ms, 10.2MB) |
테스트 9 〉 | 통과 (0.07ms, 10.2MB) |
테스트 10 〉 | 통과 (0.52ms, 10.3MB) |
테스트 11 〉 | 통과 (0.31ms, 10.2MB) |
테스트 12 〉 | 통과 (1.06ms, 10.1MB) |
테스트 13 〉 | 통과 (0.65ms, 10.2MB) |
테스트 14 〉 | 통과 (0.02ms, 10.2MB) |
테스트 15 〉 | 통과 (0.79ms, 10.2MB) |
테스트 16 〉 | 통과 (0.01ms, 10.2MB) |
효율성 테스트
테스트 1 〉 | 통과 (179.34ms, 16.1MB) |
테스트 2 〉 | 통과 (402.40ms, 21.9MB) |
테스트 3 〉 | 통과 (1961.17ms, 49.9MB) |
테스트 4 〉 | 통과 (140.68ms, 15MB) |
테스트 5 〉 | 통과 (2145.56ms, 51.9MB) |
채점 결과
정확성: 76.2
효율성: 23.8
합계: 100.0 / 100.0
'코테' 카테고리의 다른 글
[프로그래머스] <소수 찾기> 파이썬 (0) | 2021.04.05 |
---|---|
[프로그래머스] <괄호 변환> 파이썬 (0) | 2021.04.05 |
[프로그래머스] <2xn타일링> 파이썬 (0) | 2021.04.04 |
[프로그래머스] <삼각 달팽이> 파이썬 (0) | 2021.04.04 |
[프로그래머스] <기능개발> 파이썬 (0) | 2021.04.04 |