#P10157. [LSOT-2] Tree and Xor

[LSOT-2] Tree and Xor

题目背景

优秀的题目不需要题目背景。

题目描述

给定 nn,你需要构造一棵 nn 个点的以 11 为根的有根树,满足 i=1ndegree(i)=0\bigoplus\limits_{i=1}^ndegree(i)=0fa2fanfa_2 \sim fa_n 的字典序最小。其中,\oplus 表示异或运算。

其中 degree(i)degree(i) 表示与点 ii 相连的点数,faifa_i 表示点 ii 的父节点且 fai<ifa_i < i

你需要输出 i=2ni×fai\sum\limits_{i=2}^ni \times fa_i,若无解则输出 1-1

输入格式

第一行,一个正整数 TT,表示询问数量。

接下来每 TT 行每行一个正整数 nn 表示一次询问。

输出格式

一共 TT 行,每行一个整数表示答案除 998244353998244353 的余数。

2
2
3
2
-1

提示

「本题采用捆绑测试」

  • Subtask 1(5 pts):n7\texttt{Subtask 1(5 pts):}n \leq 7
  • Subtask 2(10 pts):n20\texttt{Subtask 2(10 pts):} n \leq 20
  • Subtask 3(20 pts):n2000\texttt{Subtask 3(20 pts):}\sum n \leq 2000
  • Subtask 4(15 pts):n=2k1\texttt{Subtask 4(15 pts):}n = 2^k-1,其中 kk 是自然数。
  • Subtask 5(50 pts):\texttt{Subtask 5(50 pts):}无特殊限制。

对于所有数据,1T1061\le T\le 10^62n1092 \leq n \leq 10^{9}