P4560 [IOI 2014] Wall 砖墙
题目背景
原题为交互试题,但在此请提交**完整程序**。
题目描述
给定一个长度为 $n$且初始值全为 $0$的序列。你需要支持以下两种操作:
- Add $L, R, h$:将序列 $[L, R]$内所有值小于 $h$的元素都赋为 $h$,此时不改变高度大于 $h$的元素值
- Remove $L, R, h$:将序列 $[L, R]$内所有值大于 $h$的元素都赋为 $h$,此时不改变高度小于 $h$的元素值
你需要输出进行 $k$次上述操作之后的序列。
输入格式
无
输出格式
无
说明/提示
- 子任务#1(8分):满足 $1 \leq n \leq 10 000, 1 \leq k \leq 5 000$;
- 子任务#2(24分):满足 $1 \leq n \leq 100 000, 1 \leq k \leq 500 000$,全部增加操作均在全部移除操作之前;
- 子任务#3(29分):满足 $1 \leq n \leq 100 000, 1 \leq k \leq 500 000$;
- 子任务#4(39分):满足 $1 \leq n \leq 2 000 000, 1 \leq k \leq 500 000$。
所有操作的高度 $h$满足 $0 \leq h \leq 100 000$。