AT_agc036_f.[AGC036F] Square Constraints

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

给定一个整数 NN。请计算满足以下条件的 (0,1,⋯ ,2N−1)(0,1,\cdots,2N-1) 的一个排列 (P0,P1,⋯ ,P2N−1)(P_0,P_1,\cdots,P_{2N-1}) 的个数。由于答案可能非常大,请输出其对 MM 取模的结果。

  • 条件:对于所有 i (0≤i≤2N−1)i\ (0\leq i\leq 2N-1),都有 N2≤i2+Pi2≤(2N)2N^2 \leq i^2 + P_i^2 \leq (2N)^2。

输入格式

输入从标准输入按以下格式给出。

NN MM

输出格式

输出满足条件的排列个数对 MM 取模的结果。

输入输出样例

  • 输入#1

    2 998244353

    输出#1

    4
  • 输入#2

    10 998244353

    输出#2

    53999264
  • 输入#3

    200 998244353

    输出#3

    112633322

说明/提示

限制

  • 1≤N≤2501 \leq N \leq 250
  • 2≤M≤1092 \leq M \leq 10^9
  • 输入的所有值均为整数。

样例解释 1

满足条件的排列共有如下 44 种。

  • (2,3,0,1)(2,3,0,1)
  • (2,3,1,0)(2,3,1,0)
  • (3,2,0,1)(3,2,0,1)
  • (3,2,1,0)(3,2,1,0)

由 ChatGPT 4.1 翻译

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

首页