TopCoder

User's AC Ratio

NaN% (0/0)

Submission's AC Ratio

NaN% (0/0)

Tags

Description

給你一個長度為$N$的序列$a_1, a_2, ..., a_n$,以及$Q$個操作,操作有以下幾種:

1. 把一個區間$[l, r]$的每個數字都加上$x$。

2. 問你一個區間$[l, r]$的最大值。

3. 把一個區間$[l, r]$的每個數字都變成$y$。

Input Format

第一行包含兩個正整數 $N$、$Q$,分別表示序列長度為 $N$ 以及有 $Q$ 筆操作。

第二行包含 $N$ 個正整數,依序表示 $a_1$ 到 $a_N$。

接下來的$Q$ 行,每行為下列三種操作之一:

$1\ l\ r\ x$:把$[l, r]$加上$x$。

$2\ l\ r$:詢問$[l, r]$的最大值。

$3\ l\ r\ y$:把$[l, r]$變成$y$。

$1 \le N,Q \le 10^ 5$、$1 \le a_i \le 10^ 9$、$1 \le x \le 10^ 4$、$1 \le y \le 10^ 9$、$1 \le l \le r \le N$

Output Format

對於每個詢問,輸出一個整數,表示該區間的最大值。

Sample Input 1

6 5
8 7 1 2 2 8
2 3 6
1 2 5 7
2 3 6
3 1 5 5
2 3 6

Sample Output 1

8
9
8

Hints

Problem Source

NEOJ Problem 368

Subtasks

No. Testdata Range Constraints Score
1 0~6 $N,Q \le 2000$ 40
2 0~11 無額外限制 60

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 1000 65536 65536 1 2
1 1000 65536 65536 1 2
2 1000 65536 65536 1 2
3 1000 65536 65536 1 2
4 1000 65536 65536 1 2
5 1000 65536 65536 1 2
6 1000 65536 65536 1 2
7 1000 65536 65536 2
8 1000 65536 65536 2
9 1000 65536 65536 2
10 1000 65536 65536 2
11 1000 65536 65536 2