알고리즘 문제풀이/소프티어
[소프티어 Lv3] 택배 마스터 광우(완전탐색)
summer_light
2023. 11. 2. 08:12
[소프티어 Lv3] 택배 마스터 광우
https://softeer.ai/practice/6273
Softeer - 현대자동차그룹 SW인재확보플랫폼
여름 휴가를 떠나기 위해 용돈이 필요했던 광우는 H택배 상하차 아르바이트를 지원 했다. 광우는 평소에 운동을 하지않아 힘쓰는 데에 자신이 없었지만, 머리 하나 만큼은 비상해 택배가 내려오
softeer.ai
[내 풀이]
- from itertools import permutations
- n이 작기 때문에 모든 경우의 수에 대하여 계산했다.
# 완전 탐색
import sys
from itertools import permutations
n, m, k = map(int, input().split())
rails = list(map(int, input().split()))
minV = m * k
for rail in permutations(rails, n):
cnt = 0
V = 0
baguni = 0
i = 0
while cnt < k:
if i == n:
i = 0
if baguni + rail[i] > m:
V += baguni
baguni = 0
cnt += 1
continue
baguni += rail[i]
i += 1
if minV > V: minV = V
print(minV)