其他分享
首页 > 其他分享> > 牛客练习赛101——B题 荒神在此

牛客练习赛101——B题 荒神在此

作者:互联网

题目描述

给出一个数字 nnn ,求有多少个长度为 nnn 的序列 aaa (下标为 1∼n1\sim n1∼n )。
要求满足

  1. 对于所有  i∈[1,n] ,0≤ai≤i。
  2. ∑i=1n ​i×ai​  是一个奇数。

因为答案可能很大,所以你需要输出答案对 998244353 取模。

输入描述:

第一行给出一个正整数 n (1≤n≤107)。

输出描述:

输出一行一个整数表示对 998244353 取模后的答案。
示例1

输入

2

输出

3

 

解题思路

数学思维:

可以发现,无论后面取什么,只要通过改变a1的值,都能满足要求
(n + 1)!
————————
2

AC代码(Java)

import java.util.*;

public class Main {
    /*
        可以发现,无论后面取什么,只要通过改变a1的值,都能满足要求
        (n + 1)!
        ————————
           2
    */
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int MOD = 998244353;
        long res = 1;
        for (int i = 2; i <= n; i++) {
            res *= (i + 1);
            res %= MOD;
        }
        System.out.println(res);
    }
}

原题链接:https://ac.nowcoder.com/acm/contest/11247/B

标签:输出,练习赛,Scanner,取模,int,荒神,牛客,public,998244353
来源: https://www.cnblogs.com/pengsay/p/16412018.html