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

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

은?행 털!자 2

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

요약
시작 위치를 정해 오른쪽으로 걸으며 도착 시각과 문이 열리는 시각이 정확히 같은 은행을 모두 털고, 얻는 금액의 최댓값을 구한다.
난이도

보통10점 중 7점

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

문제

프로 은행강도 시우가 은행을 털려고 한다. 시우가 달려가는 일직선 경로 위엔 NN개의 은행이 있다. ii번째 은행은 직선상에서 서로 다른 좌표 X_iX\_i에 위치하며, 시간이 정확히 T_iT\_i 일 때만 문이 열려 입장할 수 있다. 또한 이 은행을 털면 C_iC\_i원을 얻을 수 있다.

시우는 직선상에서 임의의 정수 좌표에서 시작해 움직인다. 움직이는 동안 좌표는 감소하지 않아야 한다 (원하는 만큼 멈춰 설 수 있음에 주의하라). 시간은 00으로 시작하며 좌표가 11만큼 증가할 때 시간도 11만큼 증가한다.

시우는 문이 열려 있는 은행을 마주치면 반드시 털고 가며, 매우 숙련돼있기 때문에 은행을 털어도 시간이 전혀 증가하지 않는다.

시우가 적절한 위치에서 시작했을 때, 얻을 수 있는 최대 금액을 출력하여라.

입력

첫 번째 줄에 NN이 주어진다. (1≤N≤300,0001 \le N \le 300\\,000)

두 번째 줄부터 NN개의 줄에 걸쳐 각 줄마다 ii와 X_iX\_i가 증가하는 순서대로 정수 X_i,T_i,C_iX\_i, T\_i, C\_i가 주어진다. (0≤X_i,T_i,C_i≤1090 \le X\_i, T\_i, C\_i \le 10^9)

모든 X_iX\_i는 서로 다르다.

출력

시우가 얻을 수 있는 최대 금액을 출력한다.

예제3

  1. 예제 1

    입력
    1
    0 3 4
    
    예상 출력
    4
    
  2. 예제 2

    입력
    2
    0 0 10
    1 0 3
    
    예상 출력
    10
    
  3. 예제 3

    입력
    5
    0 2 4
    1 6 1
    2 4 4
    3 8 10
    4 5 2
    
    예상 출력
    18