아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

공항 대기 최소화

시간 제한3초메모리 제한512 MB

요약
1번 국가에서 n번 국가로 가는 여정 중 공항에서 기다린 시간의 제곱 합이 최소가 되는 경로를 찾는다.
난이도

어려움10점 중 8점

유형
그래프, 최단 경로, 동적 계획법, 정렬
정답자
아직 제출이 없습니다

문제

데이비드는 세계 곳곳을 여행하려고 한다. 방문할 수 있는 나라는 nn개이고, 탈 수 있는 항공편은 mm개다. ii번 항공편은 시각 sis_i에 나라 aia_i를 출발해 시각 eie_i에 나라 bib_i에 도착한다.

데이비드는 시각 00에 나라 11의 공항에 있고, 나라 nn까지 가려고 한다. 이동에 걸리는 전체 시간은 신경 쓰지 않지만, 공항에서 기다리는 것은 몹시 싫어한다. 공항에서 tt만큼 기다리면 짜증이 t2t^2만큼 쌓인다. 시각 00부터 첫 항공편이 출발할 때까지 나라 11의 공항에서 보내는 시간도 기다린 시간에 들어간다.

짜증의 총합이 가장 작은 일정을 구하라.

입력

첫째 줄에 정수 nn과 mm이 공백으로 구분되어 주어진다. (2≤n≤200 0002 \le n \le 200\,000, 1≤m≤200 0001 \le m \le 200\,000)

다음 mm개의 줄에는 네 정수 aia_i, bib_i, sis_i, eie_i가 공백으로 구분되어 주어진다. (1≤ai,bi≤n1 \le a_i, b_i \le n, 0≤si≤ei≤1060 \le s_i \le e_i \le 10^6) 이는 시각 sis_i에 나라 aia_i를 출발해 시각 eie_i에 나라 bib_i에 도착하는 항공편을 뜻한다.

출발 나라와 도착 나라가 같은 항공편도 있을 수 있다.

출발 시각이 같은 두 항공편은 없고, 도착 시각이 같은 두 항공편도 없다. 또 어떤 항공편의 도착 시각이 다른 항공편의 출발 시각과 같은 경우도 없다. 나라 nn에 도착하는 일정은 항상 존재한다.

출력

짜증의 총합의 최솟값을 한 줄에 출력한다.

힌트

첫 번째 예제에서 짜증이 가장 적은 일정은 다음과 같다.

  • 입력의 다섯째 항공편. 나라 11에서 나라 22로, 시각 33에 출발해 시각 88에 도착한다.
  • 셋째 항공편. 나라 22에서 나라 11로, 시각 99에 출발해 시각 1212에 도착한다.
  • 일곱째 항공편. 나라 11에서 나라 33으로, 시각 1313에 출발해 시각 2727에 도착한다.
  • 여덟째 항공편. 나라 33에서 나라 55로, 시각 2828에 출발해 시각 100100에 도착한다.

네 번의 기다림에서 쌓이는 짜증은 각각 323^2, 121^2, 121^2, 121^2이고, 총합은 1212다. 더 빨리 도착하는 일정도 있지만 짜증의 총합은 더 크다.

예제2

  1. 예제 1

    입력
    5 8
    1 2 1 10
    2 4 11 16
    2 1 9 12
    3 5 28 100
    1 2 3 8
    4 3 20 21
    1 3 13 27
    3 5 23 24
    
    예상 출력
    12
    
  2. 예제 2

    입력
    3 5
    1 1 10 20
    1 2 30 40
    1 2 50 60
    1 2 70 80
    2 3 90 95
    
    예상 출력
    1900