GOLD 채굴 계획


답안 제출

Points: 9
시간 제한: 2.0s
메모리 제한: 1G

문제 유형

\(N\)개의 광맥이 있다. 0일 차에 \(i\)번째 광맥에서 채굴할 수 있는 GOLD의 양은 \(A_i\)이다.

탐사가 계속되면서 각 광맥에서 채굴할 수 있는 GOLD의 양은 하루마다 1씩 증가한다. 따라서 \(t\)일 차에 \(i\)번째 광맥을 채굴하면 \(A_i+t\)만큼의 GOLD를 얻는다. 광맥을 채굴하는 데에는 시간이 걸리지 않으며, 각 광맥은 한 번만 채굴할 수 있다.

채굴 계획에는 다음과 같은 \(M\)개의 조건이 있다.

  • \(T_i\)일까지 채굴한 GOLD의 총합이 \(Q_i\) 이상이어야 한다.

모든 조건을 만족하면서 채굴했을 때, 마지막 조건이 있는 날까지 얻을 수 있는 GOLD 총합의 최댓값을 구하는 프로그램을 작성하시오.

입력

첫째 줄에 광맥의 수 \(N\)과 조건의 수 \(M\)이 공백으로 구분되어 주어진다.

둘째 줄에 각 광맥에서 0일 차에 채굴할 수 있는 GOLD의 양 \(A_1, A_2, \dots, A_N\)이 공백으로 구분되어 주어진다.

셋째 줄부터 \(M\)개의 줄에 걸쳐 각 조건을 나타내는 두 정수 \(T_i\)와 \(Q_i\)가 공백으로 구분되어 주어진다.

출력

모든 조건을 만족할 수 있다면, 마지막 조건이 있는 날까지 얻을 수 있는 GOLD 총합의 최댓값을 출력한다.

모든 조건을 만족할 수 없다면 -1을 출력한다.

제한 사항

  • \(1 \le N, M \le 200,000\)
  • \(1 \le A_i \le 1,000,000,000\)
  • \(1 \le T_i, Q_i \le 1,000,000,000\)
  • \(T_1 \le T_2 \le \dots \le T_M\)
  • \(Q_1 \le Q_2 \le \dots \le Q_M\)

예제 입력 1

4 3
2 5 1 4
1 6
3 12
5 20

예제 출력 1

26

예제 설명 1

1일 차에 두 번째 광맥을 채굴하면 \(5+1=6\) GOLD를 얻어 첫 번째 조건을 만족한다.

3일 차에 네 번째 광맥을 채굴하면 \(4+3=7\) GOLD를 추가로 얻는다. 지금까지 얻은 GOLD는 \(13\)이므로 두 번째 조건도 만족한다.

5일 차에 남은 두 광맥을 모두 채굴하면 각각 \(2+5=7\), \(1+5=6\) GOLD를 얻는다. 따라서 마지막 조건을 만족하며, 얻은 GOLD의 총합은 \(26\)이다.

예제 입력 2

2 1
1 2
1 100

예제 출력 2

-1

코멘트

현재 작성된 코멘트가 없습니다.