https://www.acmicpc.net/problem/2979
2979번: 트럭 주차
첫째 줄에 문제에서 설명한 주차 요금 A, B, C가 주어진다. (1 ≤ C ≤ B ≤ A ≤ 100) 다음 세 개 줄에는 두 정수가 주어진다. 이 정수는 상근이가 가지고 있는 트럭이 주차장에 도착한 시간과 주차장
www.acmicpc.net
백준 2979번 : 트럭 주차
접근 방식
1. 트럭이 주차장에 도착한 시간과 주차장에서 떠난 시간을 clocks 리스트에 저장한다.
-> 이때, 세 개의 트럭 중 가장 먼저 도착한 시간과 가장 늦게 떠난 시간을 min과 max에 각각 저장한다.
2. min과 max사이의 시간을 1씩 늘려가며 반복하면서 해당 시간에 몇 대의 차가 주차되어 있었는지 count를 통해
세아리면서 확인한다.
3. count와 a, b, c를 각각 곱하여 sum에 더한다.
코드
a, b, c = map(int, input().split())
clocks = []
sum = 0
min = 100
max = 0
for i in range(3) :
arrive, depart = map(int, input(). split())
if arrive < min : min = arrive
if depart > max : max = depart
clocks.append([arrive, depart])
for i in range(min, max):
# print('(', i, '~' ,i+1,')')
count = 0
for clock in range(len(clocks)) :
if clocks[clock][0] <= i and clocks[clock][1] >= i+1:
count += 1
if clock == len(clocks)-1 :
if count == 3:
sum += c*3
elif count == 2:
sum += b*2
elif count == 1:
sum += a*1
print(sum)
고찰
오랜만에 파이썬으로 문제를 풀었다. 생각보다 조금 재밌을 지도..
구현 공부한 것과 연관있는 문제라서 풀었는데, 사실 어떤 점이 많이 연관있는지는 잘 모르겠지만...........열심히 해야겠다......
'알고리즘 > Python' 카테고리의 다른 글
[백준] 파이썬 - 2331번 : 반복수열 (0) | 2023.06.17 |
---|---|
[백준] python 파이썬 - 촌수계산 (0) | 2023.06.13 |
[백준] python 파이썬 - 케빈 베이컨의 6단계 법칙 (0) | 2023.06.13 |
[백준] 파이썬 - 10451번 : 순열 사이클 (0) | 2023.06.10 |
[알고리즘] python(파이썬) - 랭킹전 대기열 (0) | 2023.06.07 |