AT_1_stpc2025_1_d.Grid Path Tree
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定正整数 N,M。
对于 k=1,2,…,N+M−1,将以下问题的答案记为 ansk。
对于长为 N+M−1 的数列对 a=(a1,a2,…,aN+M−1) 和 b=(b1,b2,…,bN+M−1),满足以下所有条件的数列对 (a,b) 被称为良好数列对:
- (a1,b1)=(1,N+1)
- 对于 i=2,3,…,N+M−1,下述任一条件成立:
- (ai,bi)=(ai−1+1,bi−1)
- (ai,bi)=(ai−1,bi−1+1)
- (aN+M−1,bN+M−1)=(N,N+M)
对于任意良好数列对 (a,b),我们按照以下条件定义一棵树 T(a,b):
- 这是一棵有 N+M 个顶点的树,顶点从 1 到 N+M 编号
- 对于 i=1,2,…,N+M−1,树中存在一条连接顶点 ai 与顶点 bi 的边
对于该树,规定 dist(i,j) 表示顶点 i 和顶点 j 之间路径上边的数量。树的得分定义为满足 1≤i<j≤N+M 且 dist(i,j)=k 的整数对 (i,j) 的个数。
请你计算所有良好数列对 (a,b) 的 T(a,b) 的得分之和,对 998244353 取模。
求出所有 ans1,ans2,…,ansN+M−1,并计算 $ \displaystyle \sum_{k = 1}^{N + M - 1} (\mathrm{ans}_{k}\oplus k) ,输出该值。其中,\oplus$ 表示按位异或(XOR)运算。
按位异或(XOR)运算的定义如下:对于非负整数 A,B,它们的异或 A⊕B,是将 A,B 用二进制表示后,同一位上仅一方为 1 时该位结果为 1,否则为 0。
例如,3⊕5=6(即 011⊕101=110)。
输入格式
输入为一行,包括:
N M
输出格式
输出所求答案。
输入输出样例
输入#1
2 2
输出#1
14
输入#2
24 167
输出#2
21925979855
输入#3
4297614 4167924
输出#3
4162418864110099
说明/提示
样例解释 1
(ans1,ans2,ans3)=(6,4,2),所以输出应为 (6⊕1)+(4⊕2)+(2⊕3)=7+6+1=14。
数据范围
- 输入均为整数
- 1≤N≤5×106
- 1≤M≤5×106
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?