쿠키를 좋아하는 춘배

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

요약
진열대에 놓인 쿠키 i를 사면 거리 R_i 이내의 쿠키를 무료로 받을 수 있을 때, 모든 쿠키를 얻는 최소 비용을 구한다.
난이도

보통10점 중 7점

유형
동적 계획법, 세그먼트 트리, 정렬, 구간
정답자
아직 제출이 없습니다

문제

오늘도 하루 만에 집에 있는 모든 쿠키를 다 먹은 춘배는 시원에게 쿠키 가게에서 이벤트를 한다는 이야기를 듣고 쿠키 가게에 가기로 했다.

쿠키 가게에는 NN개의 칸으로 이루어진 진열대 위에 KK개의 쿠키가 놓여 있다. ii번 쿠키는 X_iX\_i번째 칸에 있고 가격은 C_iC\_i원이다. 단, 과자의 위치는 서로 다르다.

시원이의 쿠키 가게는 이벤트를 하고 있기 때문에 ii번 쿠키를 구매하면 ii번 쿠키와 거리가 R_iR\_i 이하인 쿠키 중 원하는 쿠키들을 전부 무료로 준다. 두 쿠키 ii와 jj사이의 거리는 ∣X_i−X_j∣\mid X\_i - X\_j \mid와 같다.

맥북을 사느라 가난해진 춘배는 최소의 비용으로 모든 KK개의 쿠키를 전부 먹고 싶었다. 춘배가 쿠키를 구매하거나 무료로 받아 모든 쿠키를 받기 위해 최소 얼마의 금액을 지불해야 되는지 구해보자.

입력

첫째 줄에 진열대의 길이 NN과 쿠키의 개수 KK가 공백으로 구분되어 주어진다.(1≤K≤N≤100,000)(1 \le K \le N \le 100\\,000)

둘째 줄부터 KK개의 줄에 걸쳐 X_iX\_i, R_iR\_i, C_iC\_i가 공백으로 구분되어 주어진다. (1≤X_i≤N,0≤R_i≤N,1≤C_i≤1,000)(1 \le X\_i \le N, 0 \le R\_i \le N, 1 \le C\_i \le 1\\,000)

출력

모든 쿠키를 구매하기 위해 지불해야 하는 최소 금액을 출력한다.

예제1

  1. 예제 1

    입력
    10 3
    3 3 2
    5 1 8
    9 1 1
    
    예상 출력
    3