1번 국가에서 n번 국가로 가는 여정 중 공항에서 기다린 시간의 제곱 합이 최소가 되는 경로를 찾는다.
어려움8그래프최단 경로동적 계획법정렬아직 제출이 없습니다시간 제한3초메모리 제한512 MB데이비드는 세계 곳곳을 여행하려고 한다. 방문할 수 있는 나라는 n개이고, 탈 수 있는 항공편은 m개다. i번 항공편은 시각 si에 나라 ai를 출발해 시각 ei에 나라 bi에 도착한다.
데이비드는 시각 0에 나라 1의 공항에 있고, 나라 n까지 가려고 한다. 이동에 걸리는 전체 시간은 신경 쓰지 않지만, 공항에서 기다리는 것은 몹시 싫어한다. 공항에서 t만큼 기다리면 짜증이 t2만큼 쌓인다. 시각 0부터 첫 항공편이 출발할 때까지 나라 1의 공항에서 보내는 시간도 기다린 시간에 들어간다.
짜증의 총합이 가장 작은 일정을 구하라.
첫째 줄에 정수 n과 m이 공백으로 구분되어 주어진다. (2≤n≤200000, 1≤m≤200000)
다음 m개의 줄에는 네 정수 ai, bi, si, ei가 공백으로 구분되어 주어진다. (1≤ai,bi≤n, 0≤si≤ei≤106) 이는 시각 si에 나라 ai를 출발해 시각 ei에 나라 bi에 도착하는 항공편을 뜻한다.
출발 나라와 도착 나라가 같은 항공편도 있을 수 있다.
출발 시각이 같은 두 항공편은 없고, 도착 시각이 같은 두 항공편도 없다. 또 어떤 항공편의 도착 시각이 다른 항공편의 출발 시각과 같은 경우도 없다. 나라 n에 도착하는 일정은 항상 존재한다.
짜증의 총합의 최솟값을 한 줄에 출력한다.
첫 번째 예제에서 짜증이 가장 적은 일정은 다음과 같다.
네 번의 기다림에서 쌓이는 짜증은 각각 32, 12, 12, 12이고, 총합은 12다. 더 빨리 도착하는 일정도 있지만 짜증의 총합은 더 크다.