만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

드론

시간 제한2초메모리 제한1024 MB

요약
모든 점을 덮도록 구간들을 고르고, 어떤 점이든 그 점을 덮는 구간 비용의 합이 가장 큰 값을 최소로 만드는 문제입니다.
난이도

보통10점 중 7점

유형
구간, 동적 계획법, 이분 탐색
정답자
아직 제출이 없습니다

문제

농부가 한 직선 위에 놓인 희귀한 꽃을 키운다. 꽃은 모두 nn송이이고, 각 꽃 f_if\_i는 직선 위의 위치 x_ix\_i에 있다. 각 꽃은 직선 위의 점으로 볼 수 있다. 농부는 꽃에 정기적으로 비료를 주려고 비료 드론 여러 대를 빌린다.

드론은 비행하면서 땅에 비료를 뿌린다. 각 드론의 비행 경로는 선분이며, 닫힌 구간으로 볼 수 있다. 주어진 드론은 mm대이고, 드론 D_iD\_i의 구간은 [a_i,b_i][a\_i, b\_i], 비용은 c_ic\_i이다. 주어진 모든 점이 선택한 구간 중 적어도 하나에 포함되도록 드론 집합을 골라야 한다. 즉, 선택한 구간들의 합집합이 모든 점을 포함해야 한다. 이 조건을 만족하는 드론 집합을 후보 집합이라고 한다.

모든 점과 모든 구간의 끝점은 서로 다른 좌표를 가진다고 가정한다. 점이 구간에 포함되면 그 구간이 점을 덮는다고 한다. 후보 집합 XX에서 각 점이 치르는 비용은 XX의 구간 중 그 점을 덮는 구간들의 비용 합이다. 모든 후보 집합에 대해 점 비용의 최댓값을 구하고, 그 최댓값이 가장 작아지는 값을 찾아라.

예를 들어 그림에는 점 다섯 개와 구간 네 개가 있다. 각 구간 위의 숫자는 비용이다. 후보 집합은 세 가지이며, {[1,5],[6,10],[8,13]}\{[1, 5], [6, 10], [8, 13]\}, {[1,5],[3,11],[8,13]}\{[1, 5], [3, 11], [8, 13]\}, 그리고 구간 네 개를 모두 고른 집합이다. 첫 번째 집합에서는 위치 9의 점이 비용 4를 치른다. 두 번째와 세 번째 집합에서는 같은 점이 각각 3과 5를 치른다. 따라서 점 비용 최댓값의 최솟값은 3이다.

입력

첫 줄에 두 정수 nn과 mm이 주어진다 (n≥1n \ge 1, 2≤n+m≤100,0002 \le n + m \le 100,000, 1≤m≤2,0001 \le m \le 2,000). nn은 점의 개수이고 mm은 구간의 개수이다. 둘째 줄에는 점의 위치 nn개가 주어지며, 각 값은 0 이상 10910^9 이하이다. 이어지는 mm개의 줄에는 세 정수 aa, bb, cc가 한 줄씩 주어진다. 이는 구간 [a,b][a, b]와 비용 cc를 뜻한다 (0≤a<b≤1090 \le a < b \le 10^9, 1≤c≤1091 \le c \le 10^9). 모든 점과 모든 구간의 끝점은 서로 다른 좌표를 가진다.

출력

모든 후보 집합 중 점 비용 최댓값의 최솟값을 한 줄에 출력한다. 후보 집합이 없으면 -1을 출력한다.

예제3

  1. 예제 1

    입력
    5 4
    4 9 2 7 12
    1 5 2
    6 10 2
    3 11 1
    8 13 2
    
    예상 출력
    3
    
  2. 예제 2

    입력
    5 4
    4 9 2 7 12
    1 5 2
    8 11 2
    3 6 1
    10 13 2
    
    예상 출력
    -1
    
  3. 예제 3

    입력
    18 7
    3 4 6 13 14 8 9 11 22 23 16 17 18 29 30 31 26 27
    5 21 2
    19 24 6
    7 15 3
    2 12 4
    20 28 5
    1 10 5
    25 32 3
    
    예상 출력
    6