#126. Swapity Swapity Swap

0

Swapity Swapity Swap

Swapity Swapity Swap

题目描述

农夫约翰的 NN 头奶牛(1≤N≤1051\le N\le 10^5)站成一排。从左到右第 ii 头奶牛的标签为 ii,对每个 1≤i≤N1\le i\le N 都成立。 农夫约翰为奶牛们想出了一套新的晨练流程。他给出了奶牛们 MM 对整数 (L1,R1)…(LM,RM)(L_1,R_1) \ldots (L_M, R_M),其中 1≤M≤1001 \leq M \leq 100。随后他让奶牛们将下面这个包含 MM 步的过程恰好重复 KK 次(1≤K≤1091\le K\le 10^9): 对每个 ii 从 11 到 MM: 当前位于从左数位置 Li…RiL_i \ldots R_i 的奶牛序列反转其顺序。 在奶牛们恰好重复该过程 KK 次之后,请输出从左到右第 ii 头奶牛的标签(对每个 1≤i≤N1\le i\le N)。

输入格式

第一行包含 NN、MM 和 KK。 对每个 1≤i≤M1\le i\le M,第 i+1i+1 行包含 LiL_i 和 RiR_i,二者均为范围 1…N1 \ldots N 内的整数,且满足 Li<RiL_i < R_i。

输出格式

输出共 NN 行。 在第 ii 行,输出执行该指令串 KK 次后数组的第 ii 个元素。

7 2 2
2 5
3 7
1
2
4
3
5
7
6

提示

评分: 测试点 2 满足 N=K=100N=K=100。 测试点 3-5 满足 K≤103K\le 10^3。 测试点 6-10 无额外限制。

起初,奶牛的顺序(从左到右)为 [1,2,3,4,5,6,7][1,2,3,4,5,6,7]。在该过程的第一步之后,顺序为 [1,5,4,3,2,6,7][1,5,4,3,2,6,7]。在该过程的第二步之后,顺序为 [1,5,7,6,2,3,4][1,5,7,6,2,3,4]。将这两步再重复一次即可得到样例输出。

题目致谢:Brian Dean

标签: USACO|2020|Silver

来源

USACO|2020|Silver