1 条题解
-
0
题解
思路推导
设所有数字之和模 为 。某一位数字 能证明车票幸运,当且仅当 。因此可以固定总和余数,反过来统计没有任何一位满足这个同余式的车票。
当 为奇数时,乘二在模 意义下是双射。每个 恰有一个被禁止的数字。利用循环群上的容斥或单位根筛,可把所有余数的非幸运车票总数化为
。
当 为偶数时,只有偶数余数可能有解,并且每个有解余数对应两个相差 的数字。把数字按模 配对后,同样的计数给出中等版所需闭式。
做法
小范围直接枚举全部 张车票。中等范围枚举总和余数 ,删去满足 的数字,再用余数动态规划统计总和为 的非幸运序列。满分范围按 的奇偶代入闭式,并用快速幂计算。
正确性证明
固定一张车票及其总和余数 。它幸运等价于至少一位 满足 ,所以中等做法对每个 统计的恰是总和为 且所有位都避开对应禁用集合的非幸运车票。各个 互不重叠,故用全部 张车票减去它们即得答案。
奇数 时禁用集合恒为一个元素;偶数 时,奇数 的禁用集合为空,偶数 的禁用集合恰为两个相差 的元素。对循环余数计数作单位根筛后,非零频率的贡献只在相位周期整除相应指数时保留,保留频率的数量分别为题解公式中的最大公约数。因此闭式与上述逐余数动态规划统计同一集合,满分算法正确。
复杂度分析
中等算法的时间复杂度为 ,空间复杂度为 。满分算法只进行常数次快速幂与最大公约数运算,时间复杂度为 ,空间复杂度为 。
- 1
信息
- ID
- 1371
- 时间
- 3000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 0
- 上传者