#abc212h. [abc212_h]Nim Counting

[abc212_h]Nim Counting

题目描述

给定正整数 NNKK,以及一个长度为 KK 的整数序列 (A1,A2,,AK)(A_1, A_2, \ldots, A_K)

高桥和青木将玩一个有关石头的游戏。初始时,有一些石堆,每个石堆中至少包含一个石头。玩家轮流进行以下操作,高桥先开始。

  • 选择一个还剩下石头的石堆,并从该石堆中移走 11XX 个(包括 XX)石头,其中 XX 是该石堆中剩余的石头数量。

第一个无法进行操作的玩家输掉游戏。

现在,考虑满足以下条件的石头初始状态。

  • 满足 1MN1\leq M\leq N,其中 MM 是石堆的数量。
  • 每个石堆中的石头数量为 A1,A2,,AKA_1, A_2, \ldots, A_K 中的某一个。

假设石堆是有序的,总共有 K+K2++KNK+K^2+\cdots +K^N 种这样的初始状态。在这些初始状态中,找出导致高桥获胜的初始状态的数量,并对 998244353998244353 取模。

约束条件

  • 1N2×1051 \leq N \leq 2\times 10^5
  • 1K<2161 \leq K < 2^{16}
  • 1Ai<2161 \leq A_i < 2^{16}
  • 所有 AiA_i 互不相同。
  • 所有输入数值为整数。

输入

输入以以下格式从标准输入给出:

NN KK A1A_1 A2A_2 \ldots AKA_K

输出

输出答案。

示例输入 1

2 2
1 2

示例输出 1

4

共有六种可能的石头初始状态:(1)(1), (2)(2), (1,1)(1,1), (1,2)(1,2), (2,1)(2,1), (2,2)(2,2)
高桥在其中四种状态下有必胜策略:(1)(1), (2)(2), (1,2)(1,2), (2,1)(2,1),而青木在另外两种状态下有必胜策略。因此我们应该输出 44

示例输入 2

100 3
3 5 7

示例输出 2

112184936

请确保以 998244353998244353 为模计算结果的数量。