CF1266G Permutation Concatenation

题目描述

设 $n$ 为一个整数。将 $1$ 到 $n$ 的所有排列按照字典序排列,并将它们依次拼接成一个大序列 $P$。例如,当 $n = 3$ 时,$P = [1, 2, 3, 1, 3, 2, 2, 1, 3, 2, 3, 1, 3, 1, 2, 3, 2, 1]$。该序列的长度为 $n \cdot n!$。 对于一对下标 $1 \leq i \leq j \leq n \cdot n!$,我们称序列 $(P_i, P_{i+1}, \dots, P_{j-1}, P_j)$ 为 $P$ 的一个子数组。 给定 $n$,请你求出 $P$ 的不同子数组的个数。由于答案可能很大,请输出其对 $998244353$(一个质数)取模的结果。

输入格式

一行一个整数 $n$($1 \leq n \leq 10^6$),含义如题目所述。

输出格式

输出一个整数,表示不同子数组的个数,对 $998244353$ 取模。

说明/提示

在第一个样例中,序列 $P = [1, 2, 2, 1]$。它有八个不同的子数组:$[1]$、$[2]$、$[1, 2]$、$[2, 1]$、$[2, 2]$、$[1, 2, 2]$、$[2, 2, 1]$ 和 $[1, 2, 2, 1]$。 由 ChatGPT 4.1 翻译