조립라인

발자·2023년 6월 5일
0

Softeer

목록 보기
17/17

문제

import sys

input = sys.stdin.readline

# 작업장의 수
N = int(input())

# A 조립 라인, B 조립 라인, A -> B 조립 라인, B -> A 조립 라인
A = []
B = []
AB = []
BA = []

for i in range(N-1):
    #  Ai 작업장의 작업시간, Bi 작업장의 작업시간, Ai 작업장에서 Bi+1 작업장까지 이동시간, Bi 작업장에서 Ai+1 작업장까지 이동시간
    Ai, Bi, ABi, BAi = map(int, input().split())
    A.append(Ai)
    B.append(Bi)
    AB.append(ABi)
    BA.append(BAi)

# AN 작업장과 BN 작업장의 작업시간
An, Bn = map(int, input().split())
A.append(An)
B.append(Bn)

answer_A = A[:]
answer_B = B[:]

for i in range(len(A)):
    # 0번째 작업
    if i == 0:
        continue
    # 현재 A라인에 있을 때
    answer_A[i] = min(answer_A[i-1]+answer_A[i], answer_A[i-1]+B[i] + AB[i-1])
    # 현재 B라인에 있을 때
    answer_B[i] = min(answer_B[i-1]+answer_B[i], answer_B[i-1]+A[i] + BA[i-1])

print(min(answer_A[-1], answer_B[-1]))

0개의 댓글