반응형
1. 문제
https://www.acmicpc.net/problem/1715
2. 풀이
우선순위 큐
3. 구현
import sys
# sys.stdin = open('input.txt')
import heapq
lis = []
n = int(sys.stdin.readline().strip())
while n:
n-=1
tmp = int(sys.stdin.readline().strip())
heapq.heappush(lis, tmp)
answer=0
# if len(lis)==1 -> no comparision
while len(lis)>1:
a=heapq.heappop(lis)
b=heapq.heappop(lis)
answer+=(a+b)
heapq.heappush(lis, a+b)
sys.stdout.write(str(answer))
4. 반례 + 테케
@bamgoesn 님
4
30
40
50
100
답: 410
4
30
40
50
60
답: 360
8
30
40
50
20
10
100
60
120
답: 1160
8
30
40
50
20
10
100
60
10
답: 860
4
120
40
100
20
답: 500
반응형
'PS > 백준' 카테고리의 다른 글
[테스트케이스 추가] 백준 14503번: 로봇 청소기 , python 파이썬 (1) | 2021.08.06 |
---|---|
백준 16139번: 인간-컴퓨터 상호작용 python 파이썬 (0) | 2021.08.06 |
백준 10211번: Maximum Subarray python 파이 (0) | 2021.08.06 |
백준 1991번 트리순회 python 파이썬 (0) | 2021.08.06 |
백준 11725번: 트리의 부모찾기 python 파이썬 (0) | 2021.08.06 |
댓글