Olympic Chuyên KHTN 2020 - Ngày 1 - Bài 3 - NOTLIMAH

View as PDF

Submit solution

Points: 1.00 (partial)
Time limit: 2.5s
Memory limit: 256M
Input: stdin
Output: stdout

Problem type
Allowed languages
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

In case the statement didn't load correctly, you can download the statement here: Statement

Tournament là một đồ thị mà giữa ~2~ đỉnh bất kì có đúng một cạnh có hướng ~(1~ trong ~2~ chiều). ~F(G)~ là số đường đi Hamilton (đi qua mỗi đỉnh đúng ~1~ lần) của Tournament ~G~.

Tính tổng của các ~F(G)~, với ~G~ là tournament có ~N~ đỉnh và không chứa chu trình nào có độ dài chia hết cho ~D~.

Input

Dòng đầu và duy nhất chứa ~2~ số nguyên ~N~, ~D~ ~(1 \leq N \leq 100000~, ~3 \leq D \leq N + 1)~.

Output

In ra số dư của kết quả khi chia cho ~998244353~.

Giới hạn

~50\%~ số test có ~D \leq 100~

Sample Input 1

4 3

Sample Output 1

24

Sample Input 2

5 4

Sample Output 2

480

Comments

Please read the guidelines before commenting.


There are no comments at the moment.