A79551.奇怪的区间
省选/NOI-
通过率:0%
时间限制:5.00s
内存限制:1024MB
题目描述
给定序列 y1,…,yn ,需要进行 m 次操作;
每次操作给出 x1,x2,z1,z2 ,查询最小的 x 满足 x1≤x≤x2 且 z1≤yx≤z2 ,如果存在这样的 x ,则答案为 x ,并将 yx 修改为 0,否则答案为 0。
输入格式
第一行两个整数 n,m;
接下来一行 n 个数,依次表示 y1,y2,⋯yn;
接下来 m 行每行 4 个整数 x1,x2,z1,z2 ,依次表示每次操作。
输出格式
共 m 行,依次表示每次查询操作的答案。
输入输出样例
输入#1
5 4 5 4 2 3 1 4 5 1 5 1 4 1 5 1 2 2 5 3 5 1 3
输出#1
4 1 2 3
说明/提示
输入文件名: mins.in 输出文件名 mins.out
样例解释
初始的序列 y=5,4,3,2,1
第一次操作后 y=5,4,3,0,1
第二次操作后 y=0,4,3,0,1
第三次操作后 y=0,0,3,0,1
第三次操作后 y=0,0,0,0,1
数据范围
对于 10% 的数据,满足 1≤n,m≤1000。
对于另外 20% 的数据,满足 yi=i。
对于另外 20% 的数据,满足 1≤n≤105,1≤m≤2×105。
对于另外 20% 的数据,满足 1≤n≤2×105,1≤m≤5×105。
对于 100% 的数据,满足 1≤n≤3×105,1≤m≤106,1≤yi≤n。
对每个操作,满足 1≤x1≤x2≤n , 1≤z1≤z2≤n ,当 i=j 时有 yi=yj。
所有数值为整数。