P15352 [COCI 2025/2026 #4] 魔术 / Magija

题目背景

**请注意本题非同寻常的内存限制。**

题目描述

考虑一个 $1\sim N$ 的排列 $p_1\sim p_N$。定义一次**操作** $(l,r,\mathrm{len})$ 表示: - 对于 $i=0,\ldots,\mathrm{len}-1$,交换 $p_{l+i}$ 与 $p_{r+i}$。 这里保证 $[l,l+\mathrm{len}-1]$ 与 $[r,r+\mathrm{len}-1]$ **不交**。 有一个操作池,初始为空。 有 $Q$ 个事件: - $\texttt{1}$ $x$:对排列 $[1,2,\ldots,N]$,进行任意次(可以不进行)操作池中的操作,求出操作完后 $x$ 最终下标的最小值和最大值。 - 一个操作可以被使用多次; - 操作的顺序不限; - 不必使用操作池中的所有操作。 - $\texttt{2}$ $l$ $r$ $\mathrm{len}$:向操作池中加入一个操作 $(l,r,\mathrm{len})$。 回答每个询问。

输入格式

第一行,两个正整数 $N,Q$($1\le N,Q\le 2\times 10^5$)。 接下来 $Q$ 行,每行两个(或四个)正整数,形如 $\texttt{1}$ $x$ 或 $\texttt{2}$ $l$ $r$ $\mathrm{len}$,描述一个事件。其中: - $1\le x\le N$; - $1\le \mathrm{len}\le N$,$l+\mathrm{len}-1\lt r$,$r+\mathrm{len}-1\le N$。

输出格式

对于每个事件 $\texttt{1}$,输出一行两个正整数,分别表示最终得到下标的最小值、最大值。

说明/提示

### 样例解释 样例二解释:不操作可以得到最小值;操作 $1$ 次可以得到最大值。 ### 子任务 | 子任务编号 | 满分 | 限制 | | :-: | :-: | :- | | $1$ | $9$ | $N,Q\le 5$ | | $2$ | $14$ | $N,Q\le 15$ | | $3$ | $22$ | $N,Q\le 5000$ | | $4$ | $11$ | $N\le 4000$ | | $5$ | $17$ | $N\le 10000$ | | $6$ | $37$ | 无额外限制 |