news 2026/4/15 21:57:17

《P5520 [yLOI2019] 青原樱》

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
《P5520 [yLOI2019] 青原樱》

题目背景

星川之下皆萤火尘埃,
我独行在人潮你天真而待。
相遇若是借丹青着色,
青原上 绯樱如海。

——银临《青原樱》(Cover 人衣大人)

题目描述

扶苏是一个非常喜欢边听古风鸽边写数学题的人,因此这道题其实是个五三原题。

扶苏希望重现青原上樱花盛开的景色,于是他准备了很多互不相同樱花树幼苗,准备种成一行。

这一行中,一共有 n 个位置可以种下樱花,而扶苏准备了 m 支幼苗。由于樱花盛放时对左右空间需求非常大,所以樱花不能紧挨着种植,也就是任意两支幼苗之间必须至少存在一个不种花的空位置。

按照这种方式种花并不难,但是令扶苏感到好奇的是一共有多少合法的方案让他把这 m 支幼苗都种下去。一个方案是合法的当且仅当他满足上一段中叙述的要求。如果我们将花按照 1,2,3,…,m 编号,两种方案不同当且仅当被选择种花的位置不同或从左向右数花的编号序列不同。

为了避免输出过大,答案对一个参数 p 取模。

输入格式

每个输入文件中有且仅有一组测试数据。

测试数据只有一行四个整数,依次代表 type, n, m, p,其中 type 是一个帮助你判断测试点类型的参数,会在数据范围中说明。

输出格式

输出一行一个整数,代表答案对 p 取模的结果。

输入输出样例

输入 #1复制

1 3 2 19260718

输出 #1复制

2

说明/提示

样例输入输出 1 解释

一共有 2 个樱花幼苗, 3 个种花的位置,如果给幼苗编号为 1, 2,位置编号为 1, 2, 3,那么两种方案分别如下:

位置123
方案 1幼苗 1幼苗 2
方案 2幼苗 2幼苗 1

数据规模与约定

本题采用多测试点捆绑测试,共有 6 个子任务

子任务编号n≤m≤type=特殊性质子任务分值
1110特殊性质 15
220201特殊性质 115
3400200220
420002000320
5200000010000004特殊性质 220
620000001000000520

特殊性质 1:保证对应测试点的实际方案数(在取模前)不超过 106

特殊性质 2:保证 p 是一个质数。

对于 100% 的数据,保证:

  • 1≤n≤2×106。
  • 1≤m≤106。
  • 1≤p≤109。
  • 1≤m≤⌈2n​⌉。

提示
  • 请使用合适的数据类型来进行运算,避免溢出。
  • 参数 type 可以帮助你快速的判断子任务编号。

代码实现:

#include<iostream> #define LL long long using namespace std; LL t, n, m, p, res = 1; int main() { cin >> t >> n >> m >> p; for(int i = n - 2 * m + 2; i <= n - m + 1; ++i) res = (res * i) % p; cout << res << endl; return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/31 19:45:56

图书馆古籍数字化加速:AI识别结合TensorRT推理

图书馆古籍数字化加速&#xff1a;AI识别结合TensorRT推理 在国家图书馆的数字化中心&#xff0c;一台扫描仪正以每分钟一页的速度将泛黄的线装书转化为高清图像。这些图像随后被送入后台系统——等待它们的不再是缓慢的人工录入&#xff0c;而是一套能在百毫秒内完成文字识别的…

作者头像 李华
网站建设 2026/4/13 10:04:36

python基于Vue.js和Node.js线上美术馆艺术品拍卖商城平台6_67nvaicu

目录已开发项目效果实现截图开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;已开发项目效果实现截图 同行可拿货,招校园代理 python基于Vue.js和Node.js线上美术馆网站平台录像演示2024_6…

作者头像 李华
网站建设 2026/4/13 19:10:58

NVIDIA TensorRT镜像支持哪些主流大模型?一文说清

NVIDIA TensorRT镜像支持哪些主流大模型&#xff1f;一文说清 在AI模型日益“巨型化”的今天&#xff0c;一个千亿参数的大语言模型可能在训练时需要数周时间和数百张GPU卡&#xff0c;但真正决定它能否落地的&#xff0c;其实是推理阶段的表现。哪怕精度再高&#xff0c;如果每…

作者头像 李华
网站建设 2026/4/14 5:09:25

自然语言处理推理提速秘诀:NVIDIA TensorRT镜像实战

自然语言处理推理提速实战&#xff1a;基于NVIDIA TensorRT的高效部署之道 在如今大模型横行的时代&#xff0c;一个看似简单的文本生成请求背后&#xff0c;可能要经过数十亿参数的神经网络层层计算。而用户只关心一件事&#xff1a;为什么我点了“发送”之后&#xff0c;等了…

作者头像 李华
网站建设 2026/4/14 20:46:15

探索滚动轴承设计程序:高效计算的背后

滚动轴承设计程序 滚动摩擦轴承设计计算。 滚动摩擦轴承设计&#xff0c;通过动摩擦轴承设计计算软件用户只需填入一些已知参数&#xff0c;如径向载荷、轴向载荷等&#xff0c;就能得到滚动轴承参数&#xff0c;速度快又准确。在机械设计的领域中&#xff0c;滚动摩擦轴承的设…

作者头像 李华
网站建设 2026/3/31 7:45:57

探索Matlab中JPS算法对A*算法的改进:超详细路径规划指南

matlab改进A*算法 JPS算法 jps算法 跳点搜索算法 路径规划 超详细注释 可自定义地图/障碍物 路径颜色 可显示扩展范围 修改代价函数 图为JPS算法和A*算法的对比在路径规划的领域中&#xff0c;A算法是经典的启发式搜索算法&#xff0c;但随着应用场景的复杂多样化&#xff0c;改…

作者头像 李华