100 atcoder#ABC127D. [ABC127D] Integer Cards

[ABC127D] Integer Cards

配点 : 400400

問題文

NN 枚のカードがあり、ii 番目のカードには整数 AiA_i が書かれています。

あなたは、j=1,2,...,Mj = 1, 2, ..., M について順に以下の操作を 11 回ずつ行います。

操作: カードを BjB_j 枚まで選ぶ(00 枚でもよい)。選んだカードに書かれている整数をそれぞれ CjC_j に書き換える。

MM 回の操作終了後に NN 枚のカードに書かれた整数の合計の最大値を求めてください。

制約

  • 入力は全て整数である。
  • 1N1051 \leq N \leq 10^5
  • 1M1051 \leq M \leq 10^5
  • 1Ai,Ci1091 \leq A_i, C_i \leq 10^9
  • 1BiN1 \leq B_i \leq N

入力

入力は以下の形式で標準入力から与えられる。

NN MM

A1A_1 A2A_2 ...... ANA_N

B1B_1 C1C_1

B2B_2 C2C_2

\vdots

BMB_M CMC_M

出力

MM 回の操作終了後に NN 枚のカードに書かれた整数の合計の最大値を出力せよ。

3 2
5 1 4
2 3
1 5
14

22 番目のカードに書かれた整数を 55 に書き換えることで、33 枚のカードに書かれた整数の合計が 5+5+4=145 + 5 + 4 = 14 となり、このときが最大です。

10 3
1 8 5 7 100 4 52 33 13 5
3 10
4 30
1 4
338
3 2
100 100 100
3 99
3 99
300
11 3
1 1 1 1 1 1 1 1 1 1 1
3 1000000000
4 1000000000
3 1000000000
10000000001

出力が 3232 bit 整数型に収まらない場合があります。