UOJ Logo Universal Online Judge

UOJ

统计

题目描述

小批有一个整数数组 $A_1,A_2,\ldots,A_N$. 小批想当一名理论计算机科学家,所以他会在 $O((N+Q)\alpha(N))$ 的时间里在线完成 $Q$ 次对区间 $[l,r]$ 的最大子段和查询。

小嗨对小批的水平不服,但又卡不掉小批的程序。愤怒的小嗨每次会将一个值域的区间 $[L,R]$ 外的数改成 0.

小批还能在 $O((N+Q)\alpha(N))$ 时间内完成这样的查询吗?虽然小批会在线做法,但是你不一定会,所以本题允许离线。

输入格式

第一行两个整数 $N,Q$.

第二行 $N$ 个整数,第 $i$ 个表示 $A_i$.

下面 $Q$ 行,每行四个整数 $l,r,L,R$,表示将满足 $A_i \not \in [L,R]$ 的 $A_i$ 改为 0 后,$A_l,A_{l+1},\ldots,A_r$ 的最大子段和。子段可以为空。询问对序列没有影响。保证 $1 \le l \le r \le n,-10^9 \le L \le R \le 10^9$.

输出格式

$Q$ 行,每行一个整数表示对应询问的答案。

样例输入

6 5

-1 1 -4 5 -1 4

1 1 4 5

1 1 4 514

2 3 3 3

1 6 -1 5

2 5 2 5

样例输出

0

0

0

9

5

数据范围

对所有数据,保证 $1 ≤ N, Q ≤ 10^5 , −10^9 ≤ A_i ≤ 10^9$ .

  1. $N, Q ≤ 5000$ ( 6 分)

  2. $L = −10^9 , R = 10^9$ ( 13 分)

  3. $N ≤ 20000$ ( 24 分)

  4. $N, Q ≤ 50000$ ( 15 分)

  5. $N, Q ≤ 75000$ ( 15 分)

  6. 没有特殊性质( 27 分)

时间限制 2s

空间限制 512MB