A18840.CharyChung和HashBuke的数字游戏
入门
官方
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
给定一个正整数 m,一个非负整数 a(0≤a<m),以及一个正整数序列 A=(A1,…,AN)。
定义一组正整数集合 X,其中 X={x>0∣x≡a(modm)}。
CharyChung和HashBuke将轮流进行游戏,CharyChung先开始:
选择一个索引 i(1≤i≤N)和一个属于 X 的正整数 x,使得 x≤Ai,然后将 Ai 替换为 Ai−x。如果没有这样的 i,x,当前玩家输掉游戏并且游戏结束。
找出在CharyChung首次操作时,如果双方之后都采取最优策略,CharyChung能赢得游戏的 i,x 对的数量,结果对 998244353 取模。
输入格式
N m a
A1 A2 … AN
数据范围:
- 1≤N≤3×105
- 0≤a<m≤109
- max(1,a)≤Ai≤1018
输出格式
打印出CharyChung在首次操作时可以选择的满足条件的 i,x 对的数量,结果对 998244353 取模。
输入输出样例
输入#1
3 1 0 5 6 7
输出#1
3
输入#2
5 10 3 5 9 18 23 27
输出#2
3
输入#3
4 10 8 100 101 102 103
输出#3
0
说明/提示
样例1:
我们有集合 X={1,2,3,4,5,…}。满足条件的三对 (i,x) 为:(1,4),(2,4),(3,4)。
样例2:
我们有集合 X={3,13,23,33,43,…}。满足条件的三对 (i,x) 是:(4,23),(5,3),(5,13)。
样例3:
即使CharyChung采取最优策略,他也无法获胜。因此,没有任何一对(i,x)满足条件。
样例4:
有 833333333333334 对 (i,x) 满足条件。将这个数量对 998244353 取模后打印出来。