AT_agc005_d.[AGC005D] ~K Perm Counting

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

Snuke 非常喜欢排列,所以他决定创建一个长度为 NN 的排列。

但是 Snuke 不喜欢整数 KK,因此他决定创建一个满足以下条件的排列:

  • 设排列为 a1,a2,...,aNa_1, a_2, ..., a_N。对于所有的 i=1,2,...,Ni = 1,2,...,N,满足 ∣ai−i∣≠K|a_i - i| \neq K。

长度为 NN 的排列共有 N!N! 种,其中满足条件的有多少种?由于答案可能非常大,请将答案对素数 924844033924844033 取模后输出。

输入格式

输入通过标准输入给出,格式如下:

NN KK

输出格式

输出一行,包含答案对 924844033924844033 取模后的结果。

输入输出样例

  • 输入#1

    3 1

    输出#1

    2
  • 输入#2

    4 1

    输出#2

    5
  • 输入#3

    4 2

    输出#3

    9
  • 输入#4

    4 3

    输出#4

    14
  • 输入#5

    425 48

    输出#5

    756765083

说明/提示

约束条件

  • 2≤N≤20002 \leq N \leq 2000
  • 1≤K≤N−11 \leq K \leq N-1

样例解释 #1

(1,2,3)(1, 2, 3) 和 (3,2,1)(3, 2, 1) 共2种排列满足条件。

样例解释 #2

(1,2,3,4)(1, 2, 3, 4)、(1,4,3,2)(1, 4, 3, 2)、(3,2,1,4)(3, 2, 1, 4)、(3,4,1,2)(3, 4, 1, 2)、(4,2,3,1)(4, 2, 3, 1) 共5种排列满足条件。

翻译由 DeepSeek 提供。

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

首页