만드는 중입니다

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

영내순환버스

면접 대비

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

요약
무정차로 순환하는 버스에서 대기 시작 후 처음 지나가는 버스에 타는 M명의 병사가 모두 하차하는 시각을 구합니다.
난이도

보통10점 중 4점

유형
구현, 수학
정답자
아직 제출이 없습니다

문제

영내에는 11번부터 NN번까지 번호가 매겨진 NN개의 승하차 지점이 있다. 화창한 아침, 운전병은 오늘도 병사들의 영내 이동을 돕기 위해 버스의 시동을 걸었다.

운전병의 버스는 영내순환버스라 불리며, 다음과 같은 특징이 있다.

  • 영내순환버스는 시각 00에 11번 지점에서 출발하여 22번, 33번, ⋯\cdots, NN번 지점을 순서대로 방문한 뒤 다시 11번 지점으로 돌아온다. 이 경로를 계속 순환한다.
  • 버스가 출발한 후에는 MM명의 병사가 모두 탑승하고 하차할 때까지 멈출 수 없다.
  • 버스의 수용 인원에는 제한이 없다. 즉, 승차하려는 병사는 언제나 탈 수 있다.

병사는 버스를 기다리기 시작한 시각부터 버스가 자신의 승차 지점에 도착하는 즉시 탑승한다. 이후 버스가 자신의 하차 지점에 도착하는 즉시 내린다.

운전병은 마지막 병사가 하차하자마자 운전 업무를 마쳤다. 운전병이 운전 업무를 마친 시각을 구하여라.

입력

첫 번째 줄에 승하차 지점 수 NN과 병사 수 MM이 공백으로 구분되어 주어진다. (2≤N≤100 000;(2 \leq N \leq 100\,000; 1≤M≤100 000)1 \leq M \leq 100\,000)

두 번째 줄에 ii번 지점에서 i+1i+1번 지점으로 갈 때 걸리는 시간 tit_i가 공백으로 구분되어 정수로 주어진다. 단, tNt_N은 NN번 지점에서 11번 지점으로 되돌아갈 때 걸리는 시간이다. (1≤i≤N;(1 \leq i \leq N; 1≤ti≤1 000)1 \leq t_i \leq 1\,000)

세 번째 줄부터 2+M2+M번째 줄까지 각 줄에 병사 한 명의 승차 지점 pip_i, 하차 지점 rir_i, 승차 지점에서 버스를 기다리기 시작한 시각 cic_i가 공백으로 구분되어 정수로 주어진다. (1≤i≤M;(1 \leq i \leq M; 1≤pi,ri≤N;1 \leq p_i, r_i \leq N; pi≠ri;p_i \neq r_i; 0≤ci≤109)0 \leq c_i \leq 10^9)

출력

첫 번째 줄에 운전병이 운전 업무를 마친 시각을 출력한다.

예제1

  1. 예제 1

    입력
    5 7
    1 3 2 4 3
    1 2 0
    2 5 1
    3 4 2
    3 1 7
    5 4 10
    1 4 12
    4 3 4
    
    예상 출력
    26