본문 바로가기
Algorithm/Softeer

[Softeer / Level2] GBC

by 개복취 2023. 10. 8.

https://www.softeer.ai/practice/info.do?idx=1&eid=584&sw_prbl_sbms_sn=260267 

 

Softeer

연습문제를 담을 Set을 선택해주세요. 취소 확인

www.softeer.ai


 

너무 생각을 많이 했던 구현문제.. 제네릭한 로직을 짜는것보다 단순하게 접근하는 방법이 더 좋을 수 있다는 경험치를 얻었다.

S, T 에 대한 배열을 각각 정의한다음 배열에다가 제한속도를 넣어서 속도의 차이를 U에다가 저장한다.

마지막으로, U에서 최댓값만 구하면 되는 문제였다.

<내 코드>

import sys
input = sys.stdin.readline

N, M = map(int, input().split())
S, T, U = [0] * 101, [0] * 101, [0] * 101

# limiter
location = 0
for i in range(N):
    a, b = map(int, input().split())
    for k in range(location, location + a):
        S[k] = b
    location += a

# diagnose
location2 = 0
for j in range(M):
    c, d = map(int, input().split())
    for l in range(location2, location2 + c):
        T[l] = d
    location2 += c

for p in range(101):
    U[p] = T[p] - S[p]

print(max(U))