A5030 | 回忆星芒
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
潮水总会褪去,入梦者总会醒来,许多回忆也终将被遗忘。但是,海仍是那片海,星空仍是那片星空;总有些珍贵的记忆片段如永不褪色的星芒,静静闪烁。
那是夏绯童年的一段即将消逝的回忆:少女早已无法完整地忆起那段时光;但写字的习惯、拍照的姿势、各种网站的用户名$\dots$生活中的点点滴滴却常常触及心中的弦。
这段回忆大致可以表示为一个长为 $n$ 的排列 $A = \lbrace a_1, a_2, \dots, a_n \rbrace$。绯绯已记不得 $A$ 究竟如何,但这并不影响她对 $A$ 的片段(子序列)浓厚的兴趣。
绯绯称一个片段 $\lbrace s_1, s_2, \dots, s_k \rbrace \subset \lbrace 1, 2, \dots, n \rbrace$ 是珍贵的,当且仅当存在至少一个排列 $A$,满足 $\lbrace a_{s_1}, a_{s_2}, \dots, a_{s_k} \rbrace$ 为 $A$ 唯一的最长上升子序列(LIS)。
绯绯希望知道,在所有 $\binom n k$ 个大小为 $k$ 的片段中,珍贵片段的数目:她希望对所有 $1 \le k \le m$,分别求出以上问题的答案。不过,你只需要输出这 $m$ 个答案分别对 $998\,244\,353$ 取模后的按位异或:绯绯自有办法据此得到所有答案。
那是夏绯童年的一段即将消逝的回忆:少女早已无法完整地忆起那段时光;但写字的习惯、拍照的姿势、各种网站的用户名$\dots$生活中的点点滴滴却常常触及心中的弦。
这段回忆大致可以表示为一个长为 $n$ 的排列 $A = \lbrace a_1, a_2, \dots, a_n \rbrace$。绯绯已记不得 $A$ 究竟如何,但这并不影响她对 $A$ 的片段(子序列)浓厚的兴趣。
绯绯称一个片段 $\lbrace s_1, s_2, \dots, s_k \rbrace \subset \lbrace 1, 2, \dots, n \rbrace$ 是珍贵的,当且仅当存在至少一个排列 $A$,满足 $\lbrace a_{s_1}, a_{s_2}, \dots, a_{s_k} \rbrace$ 为 $A$ 唯一的最长上升子序列(LIS)。
绯绯希望知道,在所有 $\binom n k$ 个大小为 $k$ 的片段中,珍贵片段的数目:她希望对所有 $1 \le k \le m$,分别求出以上问题的答案。不过,你只需要输出这 $m$ 个答案分别对 $998\,244\,353$ 取模后的按位异或:绯绯自有办法据此得到所有答案。
输入格式
本题包含多组测试数据。
第一行包含一个整数 $T$,表示测试数据的组数。
接下来 $T$ 行,每行两个整数 $n, m$,表示一组数据中回忆的长度与绯绯关心的 $k$ 的范围。
第一行包含一个整数 $T$,表示测试数据的组数。
接下来 $T$ 行,每行两个整数 $n, m$,表示一组数据中回忆的长度与绯绯关心的 $k$ 的范围。
输出格式
对于每组数据,输出一行一个整数,表示绯绯关心的 $m$ 个问题答案的按位异或。
输入输出样例
输入 #1
5 2 1 2 2 3 1 3 2 3 3
输出 #1
0 1 0 2 3
输入 #2
3 4 3 5 3 6 3
输出 #2
7 14 17
输入 #3
9 48 44 49 44 49 48 50 49 30 30 50 49 49 48 49 49 48 48
输出 #3
318088019 228460 1177 927527450 155117153 927527450 1177 1176 318104730
当 $n = 3$ 时:
- 集合 $A = \{1, 2, 3\}$ 的唯一最长递增子序列(LIS)为 $\{a_1 = 1, a_2 = 2, a_3 = 3\}$;
- 集合 $A = \{1, 3, 2\}$ 的 LIS 不唯一;
- 集合 $A = \{2, 1, 3\}$ 的 LIS 不唯一;
- 集合 $A = \{2, 3, 1\}$ 的唯一 LIS 为 $\{a_1 = 2, a_2 = 3\}$;
- 集合 $A = \{3, 1, 2\}$ 的唯一 LIS 为 $\{a_2 = 1, a_3 = 2\}$;
- 集合 $A = \{3, 2, 1\}$ 的 LIS 不唯一。
因此,长度为 $2$ 的珍贵片段数为 $2$(即 $\{1, 2\}$ 和 $\{2, 3\}$),长度为 $3$ 的珍贵片段数为 $1$(即 $\{1, 2, 3\}$)。
对于所有数据,保证 $1 \le T \le 10$,$1 \le m \le n \le 10^9$,$1 \le m \le 10^6$。
- 集合 $A = \{1, 2, 3\}$ 的唯一最长递增子序列(LIS)为 $\{a_1 = 1, a_2 = 2, a_3 = 3\}$;
- 集合 $A = \{1, 3, 2\}$ 的 LIS 不唯一;
- 集合 $A = \{2, 1, 3\}$ 的 LIS 不唯一;
- 集合 $A = \{2, 3, 1\}$ 的唯一 LIS 为 $\{a_1 = 2, a_2 = 3\}$;
- 集合 $A = \{3, 1, 2\}$ 的唯一 LIS 为 $\{a_2 = 1, a_3 = 2\}$;
- 集合 $A = \{3, 2, 1\}$ 的 LIS 不唯一。
因此,长度为 $2$ 的珍贵片段数为 $2$(即 $\{1, 2\}$ 和 $\{2, 3\}$),长度为 $3$ 的珍贵片段数为 $1$(即 $\{1, 2, 3\}$)。
对于所有数据,保证 $1 \le T \le 10$,$1 \le m \le n \le 10^9$,$1 \le m \le 10^6$。
| 测试点编号 | $n \le$ | $m \le$ |
|---|---|---|
| 1, 2 | $8$ | — |
| 3, 4 | $12$ | — |
| 5, 6 | $18$ | — |
| 7~9 | $50$ | — |
| 10, 11 | $2 \times 10^2$ | — |
| 12 | $2 \times 10^3$ | — |
| 13 | — | $1$ |
| 14 | — | $2$ |
| 15, 16 | $10^5$ | $3$ |
| 17, 18 | $10^5$ | $2 \times 10^3$ |
| 19, 20 | — | — |
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?