1294 : 数组批量删除
时间限制Time Limit
1
秒Sec
内存限制Memory Limit
128
兆MB
提交次数Submitted
717 次Times
通过次数Solved
202 次Times
标准评测 Standard
从标准输入读入,结果写到标准输出。评测将输出拆成 token,与标准答案逐项比较,不按整段逐字节比对。
Read from standard input and write to standard output. The judge splits the output into tokens and compares them with the official answer; it does not compare raw bytes.
| 比对Compare | token 相同即通过。中间的空格、制表符、换行可多可少。Matching tokens pass. Extra spaces, tabs, or newlines between them are ignored. |
|---|---|
| 不同则错Differs | token 个数或内容不同即错误。23 与 2 3、02 与 2、2.0 与 2 均视为不同。A different token count or value is wrong. 23 vs 2 3, 02 vs 2, and 2.0 vs 2 all differ. |
| 输入Input | 标准输入,格式见题面。Standard input; format as in the statement. |
| 输出Output | 标准输出。Standard output. |
题目描述Description
给出一个数组和依次序的若干次删除区间,每次给出删除后要求输出的结果.
输入格式Input
第一行整数 \(1 \leq n \leq 10^6\) 和 \(1 \leq m \leq 100\) 表示数组初始有 \(n\) 个数,共 \(m\) 次删除操作.
数组的 \(n\) 个数由如下代码定义:
// #include<cmath>
for(int i = 0; i < n; i ++)
a[i] = (int)(sin(n + i) * 1000000);接下来 \(m\) 行,每行前两个数 \(0 \leq s \leq e \leq 10^6\) 表示删除 \([s, e)\) 左闭右开区间的数,删除区间如果超出数组范围,超出部分无需任何操作. 后两个数\(0 \leq l \leq r \leq 10^6\) 表示要求输出执行删除后 \([l, r)\) 左闭右开区间的数.
输出格式Output
每次操作输出要求的区间的数字.
要求输出的区间超出数组范围的部分无需输出.
如果没有内容可以输出,请输出“null”.
样例Sample
出题Author
CSGrandeur