当前位置: 首页 > news >正文

25noip20d2t2 马戏表演 - Slayer

noip20d2t2

因为笨 写的详细一点。

题意

给定 n,m,对于长为 n 的排列 a,\(cnt_i=\sum_{1\leq l\leq i\leq r\leq n}[\max_{j=l}^r a_j=a_i]\)。求有多少排列 a 满足所有 \(cnt_i\) 都小于等于 m,答案对质数 p 取模。


题解

$ \text{cnt}_i $  是 “所有包含 i 的区间  $ [l, r] $  中,最大值为  $ a_i $ (即 M)” 的区间数量。

区间的左端点 l 可以选  $ 1 \sim i $ (共 i 种选择);

区间的右端点 r 可以选  $ i \sim n $ (共  $ n - i + 1 $  种选择)。

因此,满足条件的区间总数为 l 的选择数  $ \times $  r 的选择数,即: $ cnt_i = i \times (n + 1 - i) $

对于长度为 i 的排列,设全局最大值的位置为 p( $ 1 \leq p \leq i $ ),则该位置的  $ \text{cnt}_p = p \cdot (i - p + 1) $ (左端点有 p 种选法,右端点有  $ i - p + 1 $  种选法)。

函数  $ p \cdot (i - p + 1) $  是关于 p 的二次函数(开口向下),其最大值出现在  $ p \approx \frac{i+1}{2} $  时。

此时最大值为: $ \max_{p} \left( p \cdot (i - p + 1) \right) = \lceil \frac{i}{2} \rceil \cdot \left( i - \lceil \frac{i}{2} \rceil + 1 \right) $

条件  $ \lceil \frac{i}{2}\rceil \cdot (i - \lceil \frac{i}{2}\rceil + 1) \leq m $  表示:长度为i的排列中,全局最大值位置的最大可能 $ \text{cnt} $ 不超过 m 。

根据之前的结论:若全局最大值的 $ \text{cnt} $ 不超过m,则其两侧的子排列(左侧 $ [1, p-1] $ 和右侧 $ [p+1, i] $ )是 “天然合法” 的 —— 即子排列中所有位置的 $ \text{cnt} $ 必然都不超过 m(因为子排列的最大 $ \text{cnt} $ 小于全局最大值的 $ \text{cnt} $ )。

由于全局最大值的最大可能 $ \text{cnt} $ 已不超过m,且两侧子排列天然合法,因此任意长度为 i 的排列都满足 “所有位置的 $ \text{cnt} $ 不超过 m”。而长度为i的排列总数为  $ i! $ ,故此时  $ f_i = i! $ 。


若全局最大值位置合法,需:从剩下的  $ n-1 $  个数中选 i 个,排列到 “更短的子排列” 中(选法数为  $ \binom{n-1}{i} \cdot i! = \frac{(n-1)!}{(n-i)!} $ ,其中  $ \binom{n-1}{i} $  是选数, $ i! $  是子排列的排列方式);剩下的  $ n-i $  个数构成 “更长的子排列”,其合法数为  $ f_{n-i} $ (子排列的合法性与元素相对大小有关,递归求解)。

对所有可能的 “更短侧长度 i”,累加 “选数 + 子排列合法” 的情况,并乘 2(对称情形),得到: $ f_n = 2 \sum_{i=1}^{\lfloor n/2 \rfloor} \left[ i(n+1-i) \leq m \right] \cdot \frac{(n-1)!}{(n-i)!} \cdot f_{n-i} $

可以移个项。用个 \(h_i=\frac{f_i}{i!}\) 代码好看点。

https://zhengruioi.com/submission/973679

数组要开够。

http://www.hskmm.com/?act=detail&tid=31131

相关文章:

  • 从后端转行为AI工程师,转行AI大模型开发,附全套学习资源!收藏这份指南! - 实践
  • 实验一:现代C++初体验
  • 2025秋_11
  • 软件工程学习日志2025.10.14
  • CF1784E
  • nSwitch 存档自动备份系统模块 - autoSAVE
  • java基础7-字符串
  • 乐云具身活动体验
  • 【技术解决方案】联邦学习中遇到的Non-IID问题——隐语SecretFlow
  • 学习笔记:KTT
  • 题解:P10104 [GDKOI2023 提高组] 异或图
  • 2025 年筛网厂家推荐榜:聚焦场景适配与高效需求,锰钢筛网/聚氨酯筛网/合金焊接筛网/自清洁筛网/防堵筛网厂家滨州沃森网业成优选
  • P7076 [CSP-S2020] 动物园
  • 汽车价格战全面熄火了?不卷价格该卷什么? - 教程
  • P10067 [CCO 2023] Real Mountains
  • 先辈题解
  • U-Boot启动探秘:从汇编到命令行的奇幻之旅 - 指南
  • 双指针的初步了解
  • 倍增并查集学习笔记
  • 两数相加-leetcode
  • CF2147E
  • 线程共享区域
  • ZR 2025 NOIP 二十连测 #1
  • 运行时数据区
  • work1
  • 2025 年液压机厂家推荐榜:伺服/小型/大型/数控/液压机厂家口碑推荐,品质可靠 聚焦智能适配,助力企业高效生产
  • 快速上手!山海鲸 4 种高频数据接入方式
  • AI赋能,重塑未来招聘:深度解析易路AI人岗匹配解决方案
  • 2025高级语言程序设计第一次作业lcr
  • luogu 个人主页