#aBC290F. [ABC290F] Maximum Diameter

[ABC290F] Maximum Diameter

AT_abc290_f [ABC290F] Maximum Diameter

题目描述

对于长度为 NN 的正整数序列 X=(X1,X2,,XN)X=(X_1,X_2,\ldots,X_N),定义 f(X)f(X) 如下:

  • 如果存在一棵有 NN 个顶点的树,且第 ii 个顶点的度数为 XiX_i,则称这棵树为“好树”。若存在好树,则 f(X)f(X) 为所有好树中直径的最大值;若不存在好树,则 f(X)=0f(X)=0

其中,树上两个顶点之间的距离定义为从一个顶点到另一个顶点所需经过的最少边数;树的直径定义为任意两个顶点之间距离的最大值。

请计算所有可能的长度为 NN 的正整数序列 XXf(X)f(X) 之和,并对 998244353998244353 取模。可以证明 f(X)f(X) 的总和是有限的。

给定 TT 组测试数据,请分别输出每组的答案。

输入格式

输入以以下格式从标准输入读入。这里,testi\mathrm{test}_i 表示第 ii 个测试用例。

TT
test1\mathrm{test}_1
test2\mathrm{test}_2
\vdots
testT\mathrm{test}_T

每组测试数据格式如下:

NN

输出格式

输出 TT 行。

ii 行输出第 ii 组测试数据的答案。

输入输出样例 #1

输入 #1

10
2
3
5
8
13
21
34
55
89
144

输出 #1

1
6
110
8052
9758476
421903645
377386885
881422708
120024839
351256142

说明/提示

数据范围

  • 1T2×1051 \leq T \leq 2 \times 10^5
  • 2N1062 \leq N \leq 10^6
  • 输入均为整数

样例解释 1

N=3N=3 为例:

  • X=(1,1,1)X=(1,1,1) 时,不存在度数为 1,1,11,1,133 个顶点的树,因此 f(X)=0f(X)=0
  • X=(2,1,1)X=(2,1,1) 时,唯一的好树如下图所示,其直径为 22,因此 f(X)=2f(X)=2

对于 X=(2,1,1),(1,2,1),(1,1,2)X=(2,1,1),(1,2,1),(1,1,2)f(X)=2f(X)=2,其余情况 f(X)=0f(X)=0,因此答案为 66

由 ChatGPT 4.1 翻译