AT_jsc2025_final_d.PBBMM Input Generator

通过率:0%

AC君温馨提醒

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

题目描述

给定一个素数 PP。请构造满足下列条件,使「问题 C'」的答案为 00 的 N,M,YN, M, Y。

问题 C'

(与 C 问题的不同之处已以红色标注。)

给定满足 2000≤N≤2025, 1≤M≤1072000 \le N \le 2025,\ 1 \le M \le 10^7 的正整数 N,MN, M,以及 (1,2,…,N)(1,2,\dots,N) 的一个排列 Y=(Y1,Y2,…,YN)Y = (Y_1, Y_2, \dots, Y_N)。

对于 (1,2,…,N)(1,2,\dots,N) 的一个排列 X=(X1,X2,…,XN)X = (X_1, X_2, \dots, X_N),定义 f(X)f(X) 如下:

  • 对 2≤k≤N2 \le k \le N 的每一个整数 kk,计算下列值 BkB_k 的最大值 max⁡(B2,B3,…,BN)\max(B_2, B_3, \dots , B_N)。
    • 设 SS 为二维平面上由坐标 (X1,Y1),(X2,Y2),…,(Xk,Yk)(X_1,Y_1),(X_2,Y_2),\dots,(X_k,Y_k) 表示的 kk 个点的集合,BkB_k 为包含点集 SS 的所有点,并且边平行于 xx 轴的矩形中,面积最小的那个矩形(即「包围盒」)的面积对 MM 取余的结果。

求能使 f(X)f(X) 取得最小值的 XX 的个数对 PP 取余的结果。

包围盒指的是,给定点集 SS,能够覆盖 SS 中所有点且边与 xx 轴平行的所有矩形中,面积最小的那一个。

输入格式

输入为如下形式,从标准输入读入。

PP

输出格式

请输出满足问题 C' 的答案为 00 的 N,M,YN, M, Y,格式如下:

NN MM Y1Y_1 Y2Y_2 …\ldots YNY_N

其中 N,M,YN, M, Y 必须满足以下限制:

  • 2000≤N≤20252000 \le N \le 2025
  • 1≤M≤1071 \le M \le 10^7
  • N,MN, M 均为整数
  • YY 是 (1,2,…,N)(1,2,\dots,N) 的一个排列

输入输出样例

  • 输入#1

    3

    输出#1

    4 6
    2 3 4 1

说明/提示

样例解释 1

此输入输出仅为格式示例,实际不满足题目限制条件,因此为无效的输入输出。

限制条件

  • 109≤P≤109+100010^9 \le P \le 10^9 + 1000
  • PP 是素数

由 ChatGPT 5 翻译

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

首页