問題一覧 > 通常問題

No.1394 Changing Problems

レベル : / 実行時間制限 : 1ケース 3.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 9
作問者 : chineristAC / テスター : platinum
1 ProblemId : 5166 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2021-02-12 20:45:02

問題文

数学教師の chinerist 先生は次の問題をテストで出題しようと考えています。


【問題】

N 個の整数 Ai (1iN) があります。

あなたは以下の操作を好きな回数行えます。

操作: 整数 k (1kN) を選ぶ。そのあと AkN2 を足し、それ以外の要素から 1 を引く

この操作によって Ai の値が負になってもかまいません。

操作を 0 回以上行うことですべての Ai (1iN)N2 以下になるようにしたいです。これは有限回の操作で達成できることが証明できます。

必要な操作の最小回数を求めてください。


はじめに与える N, Ai は、過去のテストで出題したときに用意したものがあります。

しかし、そのまま出すのはまずいので Ai の値をいろいろ変えてみることにしました。


chinerist 先生が用意していた整数 NN 個の整数 Ai (1iN) が与えられます。

Q 個のクエリが与えられるのですべて処理してください。

各クエリでは 2 つの整数 i, x (1 iN) が与えられるので Aix に変更し、変更後の Ai (1iN) に対する上の問題の答えを出力してください。

入力

N
A1 A2  AN
Q
i1 x1

iQ xQ

  • 1N2×105
  • 0Ai109 (1iN)
  • 1Q105
  • 1iqN (1qQ)
  • 0xq109 (1q Q)
  • 与えられる入力はすべて整数

出力

Q 行出力してください。

q 行目には q 番目のクエリでの問題の答えを出力してください。

最後に改行してください。

サンプル

サンプル1
入力
3
1 2 3
1
1 1
出力
4

Ai (1iN)1, 2, 3 のときの問題に対する答えを考えます。

例えば以下のように操作をすると 4 回で条件を達成できます。

  • k=1 とする。 Ai (1iN)2, 1, 2 に変わる
  • k=3 とする。 Ai (1iN)1, 0, 3 に変わる
  • k=2 とする。 Ai (1iN)0, 1, 2 に変わる
  • k=1 とする。 Ai (1iN)1, 0, 1 に変わる

3 回以内の操作でこの条件は達成できないので答えは 4 になります。

サンプル2
入力
5
3 3 3 3 3
2
3 3
2 10
出力
0
8

1 行目の出力では Ai (1iN)3, 3, 3, 3, 3 のときの問題に対する答えを出力しています。

2 行目の出力では Ai (1iN)3, 10, 3, 3, 3 のときの問題に対する答えを出力しています。

サンプル3
入力
15
8 45 47 41 32 31 13 28 46 21 8 8 26 47 15
5
8 41
4 45
1 34
14 25
8 8
出力
303
303
331
317
275

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。