코딩테스트 대비/Softeer

[Softeer/Python] GBC ★★☆☆☆ - 효과는 굉장했다!

bluetag_boy 2021. 11. 2. 21:35
반응형
 

Softeer

제한시간 : C/C++/Java/Python/JS(1초) | 메모리 제한 : 256MB 글로벌 비즈니스 센터(GBC, Global Business Center)는 현대자동차그룹 통합 사옥이다. 지하 7층, 지상 105층, 높이 약 570m의 규모로 2026년 하반기에 완

softeer.ai

 

SOLUTION

import sys

N, M = map(int, sys.stdin.readline().split())

N_section = [list(map(int, sys.stdin.readline().split())) for _ in range(N)]
M_section = [list(map(int, sys.stdin.readline().split())) for _ in range(M)]
total = 0
max_diff = []

while True:
    if N_section == [] or M_section == []:
        break

    diff_length = M_section[0][0] - N_section[0][0] # 구간 길이 차이

    if diff_length > 0: # 구간 길이 차가 양수일 때
        max_diff.append(M_section[0][1] - N_section[0][1]) 
        N_section.pop(0) 
        M_section[0][0] = diff_length # M_section[0][0] 은 두 길이의 차이값이 된다
        
    elif diff_length < 0: # 구간 길이 차가 음수일 때
        max_diff.append(M_section[0][1] - N_section[0][1])
        M_section.pop(0)
        N_section[0][0] = -diff_length # N_section[0][0] 은 두 길이의 차이값에 -가 붙은 값이 된다. (음수형태로 나오므로) 

    else: # 구간 길이 차 = 0
        max_diff.append(M_section[0][1] - N_section[0][1]) 
        M_section.pop(0)
        N_section.pop(0)

if max(max_diff) >= 0:
    print(max(max_diff))

else: # 음수 값들만 있다면 전부 다 제한 속도를 넘지 않은 것이므로 0 출력
    print(0)