ALGORITHM/PYTHON

백준 BAEKJOON 31962번 등교 [PYTHON/파이썬]

칼코
반응형

 

 

 

 

 

백준 BAEKJOON 31962번 등교 [PYTHON/파이썬]


<문제 출처> (BRONZE Ⅳ)

https://www.acmicpc.net/problem/31962

 

 

 

 

 

 

 

<풀이>

출발할 때 걸리는 시간 S와 학교까지 가는 데 걸리는 시간 T를

이차원 배열로 만들어준 뒤 S를 기준으로 내림차순 정렬해주었다.

 

다시 이차원 배열을 순회하면서

X분 이내로 버스가 갈 수 있는지 확인해야한다.

(나는 bool형 변수 arriveCheck를 사용하여 체크했다.)

 

arriveCheck 변수를 통해 X분 이내로 갈 수 있다면

True로 바꿔주고 시간 S를 저장 후 출력했다.

가지 못한다면 -1를 출력했다.

 

 

 

 

 

 

 

<코드>

N, X = map(int, input().split())
busInfo = []
for _ in range(N):
    S, T = map(int, input().split())
    busInfo.append([S, T])

busInfo.sort(key=lambda x: -x[0])

arriveCheck = False
for k, d in busInfo:
    if k + d > X:
        continue
    else:
        arriveCheck = True
        takeTime = k  # 걸리는 시간
        break

if arriveCheck:
    print(takeTime)
else:
    print(-1)

 

 

 

 

 

 

 

 

반응형