007 - RMQ2

時間制限 0.5 秒 / メモリ制限 64 MB / 得点 15 / x 0 /


TLE
0.5sec
MLE
64MB
得点
15

問題

数列$A$が与えられる。以下のクエリを処理せよ。

クエリ1

1 $l$ $r$ $k$
($A_l$,$A_{l+1}$,...$A_r$)を$k$に変更する。

クエリ2

2 $l$ $r$
($A_l$,$A_{l+1}$,...$A_r$)の中で最小の値を出力せよ。

入力

$N$
$A_1$ $A_2$ ... $A_N$
$Q$
$Query1$
$Query2$
 :
$QueryQ$

出力

クエリ2の結果を改行区切りで出力せよ。

制約

  • $1 \leq N,Q \leq 10^5$
  • $0 \leq A_i \leq 10^9(1 \leq i \leq N)$
  • $0 \leq k \leq 10^9$
  • $1 \leq l < r \leq N$
  • 入力はすべて整数
  • 入出力

    入力例1

    10
    3 1 4 1 5 9 2 6 5 3
    4
    2 1 4 
    2 1 10
    1 2 4 4
    2 2 4
    

    出力例1

    1
    1
    4
    

    1,2つめのクエリはそれぞれ
    $min(3,1,4,1) = 1$
    $min(3,1,4,1,5,9,2,6,5,3) = 1$
    となります。
    3つめのクエリ後は$A$は$(3,4,4,4,5,9,2,6,5,3)$となります。
    4つめのクエリは$min(4,4,4) = 4$となります。

    入力例2

    7
    92 97 2 72 82 20 17 
    8
    1 1 6 78
    2 3 4
    1 1 7 9
    2 2 5
    1 5 6 63
    2 3 4
    1 5 6 0
    2 2 3

    出力例2

    78
    9
    9
    9