CF1091D.New Year and the Permutation Concatenation

普及+/提高

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Let nn be an integer. Consider all permutations on integers 11 to nn in lexicographic order, and concatenate them into one big sequence pp. For example, if n=3n = 3, then p=[1,2,3,1,3,2,2,1,3,2,3,1,3,1,2,3,2,1]p = [1, 2, 3, 1, 3, 2, 2, 1, 3, 2, 3, 1, 3, 1, 2, 3, 2, 1]. The length of this sequence will be n⋅n!n \cdot n!.

Let 1≤i≤j≤n⋅n!1 \leq i \leq j \leq n \cdot n! be a pair of indices. We call the sequence (pi,pi+1,…,pj−1,pj)(p_i, p_{i+1}, \dots, p_{j-1}, p_j) a subarray of pp. Its length is defined as the number of its elements, i.e., j−i+1j - i + 1. Its sum is the sum of all its elements, i.e., ∑k=ijpk\sum_{k=i}^j p_k.

You are given nn. Find the number of subarrays of pp of length nn having sum n(n+1)2\frac{n(n+1)}{2}. Since this number may be large, output it modulo 998244353998244353 (a prime number).

设 nn 为一个整数。考虑 11 到 nn 的所有排列,按字典序排序,并将它们连接成一个长序列 pp。例如,当 n=3n = 3 时,有 p=[1,2,3,1,3,2,2,1,3,2,3,1,3,1,2,3,2,1]p = [1, 2, 3, 1, 3, 2, 2, 1, 3, 2, 3, 1, 3, 1, 2, 3, 2, 1]。该序列的长度为 n⋅n!n \cdot n!。

设 1≤i≤j≤n⋅n!1 \leq i \leq j \leq n \cdot n! 是一对下标。我们称序列 (pi,pi+1,…,pj−1,pj)(p_i, p_{i+1}, \dots, p_{j-1}, p_j) 为 pp 的一个子数组。其长度定义为其中元素的个数,即 j−i+1j - i + 1;其和定义为所有元素之和,即 ∑k=ijpk\sum_{k=i}^j p_k。

给定 nn,请找出 pp 中长度为 nn 且和为 n(n+1)2\frac{n(n+1)}{2} 的子数组的个数。由于该数目可能很大,请输出其对 998244353998244353(一个质数)取模的结果。

输入格式

The only line contains one integer nn (1≤n≤1061 \leq n \leq 10^6), as described in the problem statement.

唯一的一行包含一个整数 nn(1≤n≤1061 \leq n \leq 10^6),其含义如题目描述中所述。

输出格式

Output a single integer — the number of subarrays of length nn having sum n(n+1)2\frac{n(n+1)}{2}, modulo 998244353998244353.

输出一个整数——长度为 nn 且元素和为 n(n+1)2\frac{n(n+1)}{2} 的子数组的个数,对 998244353998244353 取模。

输入输出样例

  • 输入#1

    3

    输出#1

    9
  • 输入#2

    4

    输出#2

    56
  • 输入#3

    10

    输出#3

    30052700

说明/提示

In the first sample, there are 1616 subarrays of length 33. In order of appearance, they are:

[1,2,3][1, 2, 3], [2,3,1][2, 3, 1], [3,1,3][3, 1, 3], [1,3,2][1, 3, 2], [3,2,2][3, 2, 2], [2,2,1][2, 2, 1], [2,1,3][2, 1, 3], [1,3,2][1, 3, 2], [3,2,3][3, 2, 3], [2,3,1][2, 3, 1], [3,1,3][3, 1, 3], [1,3,1][1, 3, 1], [3,1,2][3, 1, 2], [1,2,3][1, 2, 3], [2,3,2][2, 3, 2], [3,2,1][3, 2, 1].

Their sums are 66, 66, 77, 66, 77, 55, 66, 66, 88, 66, 77, 55, 66, 66, 77, 66. As n(n+1)2=6\frac{n(n+1)}{2} = 6, the answer is 99.

在第一个样例中,共有 1616 个长度为 33 的子数组。按出现顺序,它们依次为:

[1,2,3][1, 2, 3],[2,3,1][2, 3, 1],[3,1,3][3, 1, 3],[1,3,2][1, 3, 2],[3,2,2][3, 2, 2],[2,2,1][2, 2, 1],[2,1,3][2, 1, 3],[1,3,2][1, 3, 2],[3,2,3][3, 2, 3],[2,3,1][2, 3, 1],[3,1,3][3, 1, 3],[1,3,1][1, 3, 1],[3,1,2][3, 1, 2],[1,2,3][1, 2, 3],[2,3,2][2, 3, 2],[3,2,1][3, 2, 1]。

它们的和分别为 66、66、77、66、77、55、66、66、88、66、77、55、66、66、77、66。由于 n(n+1)2=6\frac{n(n+1)}{2} = 6,因此答案为 99。

输入解题思路,AI测评打分。不知道怎么写?

首页