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

打卡信奥刷题(3039)用C++实现信奥题 P6522 [CEOI 2010] tower (day2)

P6522 [CEOI 2010] tower (day2)

题目背景

古巴比伦人决定建造一座塔。

题目描述

这座塔共有n nn层,每层由一个边长为a i a_iai的立方体石块构成。一个石块i ii能够直接放在石块j jj上当且仅当a i ≤ a j + D a_i \leq a_j+Daiaj+D,其中D DD为一个给定的常数。

你需要求出如果使用全部的石块,有多少种不同的搭建方案。输出答案m o d 10 9 + 9 \bmod\ 10^9+9mod109+9的结果。

注意:即使两个石块的边长相同,也看做不同的石块。

输入格式

输入第一行两个整数n , D n,Dn,D

第二行n nn个整数a 1 , … , a n a_1,\dots,a_na1,,an,表示每个立方体石块的边长。

输出格式

输出一行一个整数,表示方案总数m o d 10 9 + 9 \bmod\ 10^9+9mod109+9的结果。

输入输出样例 #1

输入 #1

4 1 1 2 3 100

输出 #1

4

输入输出样例 #2

输入 #2

6 9 10 20 20 10 10 20

输出 #2

36

说明/提示

【样例解释】
样例 1 解释

首先把边长为100 100100的石块放在底部,其余的石块可以任意顺序放置,除了以下两种情况:2,1,31,3,2

样例 2 解释

首先不允许在10 1010上面放20 2020

所以就把20 2020一堆放在底下,10 1010一堆放在上面。

( 3 ! ) × ( 3 ! ) = 36 (3!)\times (3!)=36(3!)×(3!)=36

【数据规模与约定】
  • 对于10 % 10\%10%的数据,保证n ≤ 10 n\le 10n10
  • 对于30 % 30\%30%的数据,保证方案数不超过10 6 10^6106
  • 对于45 % 45\%45%的数据,保证n ≤ 20 n\le 20n20
  • 对于70 % 70\%70%的数据,保证n ≤ 70 n\le 70n70
  • 对于100 % 100\%100%的数据,保证2 ≤ n ≤ 6.2 × 10 5 2\le n\le 6.2\times 10^52n6.2×105,输入中所有数字为不超过10 9 10^9109的正整数。
【说明】

题目译自 CEOI 2010 day 2T3 tower

翻译版权为题目提供者 @ShineEternal 所有,未经许可禁止转载。

C++实现

#include<cstdio>#include<algorithm>#definelllonglongusingnamespacestd;intarr[620005];constintMOD=1e9+9;intmain(){intn,k;ll Ans=1;scanf("%d %d",&n,&k);for(inti=1;i<=n;i++)scanf("%d",&arr[i]);sort(arr+1,arr+1+n);for(intl=1,r=1;r<=n;r++){while(arr[l]+k<arr[r])l++;Ans=Ans*(r-l+1)%MOD;}printf("%lld",Ans);return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

http://www.jsqmd.com/news/565138/

相关文章:

  • 嵌入式图像处理实战:中值滤波 vs 均值滤波在STM32上的性能对比(附代码)
  • 阿里云Elasticsearch小白入门完全指南(超详细版)
  • intv_ai_mk11入门指南:非AI工程师也能掌握的网页端文本生成工具
  • 汽车贴膜服务性价比高的推荐,苏州启创达怎么样? - mypinpai
  • 告别臃肿!用原生Python+UPX打包exe,体积缩小80%的保姆级教程
  • GIS变电站设计避坑指南:主接线方案选择与设备校验的5个关键点
  • NHFR-15/15F 型自由滚筒机动车检测全场景实战指南
  • Axure RP中文界面完整汉化指南:免费语言包轻松配置
  • 实战演练:基于快马平台开发一个用于肺炎检测的cnn医疗辅助系统
  • Windows TTS语音开发实战:从环境配置到多语言支持(附完整代码)
  • FDTD Solutions新手必看:从零开始搭建你的第一个纳米光学仿真模型(附完整脚本)
  • 2026免费AI论文工具测评:覆盖全写作周期的8款神器,沁言学术领衔解决真实引用等核心痛点 - 沁言学术
  • 别再只当编码用了!深入浅出聊聊Base64那些不为人知的‘藏东西’技巧
  • 从‘弹性体赋值’到‘梯度应力场’:手把手构建你的第一个FLAC3D地应力初始化模型
  • 编译原理期末实战:从NFA到代码优化的完整复盘与避坑指南
  • AI论文实战指南:6款黑科技工具实测,1天冲关万字 - 沁言学术
  • PKSM宝可梦存档管理工具:从第一世代到第八世代的终极管理指南
  • 程序实现静电干扰自动屏蔽,无需额外硬件,颠覆抗干扰全靠硬件的观念。
  • 苏州汽车隐私膜贴膜哪个品牌好用,价格还实惠? - 工业品网
  • Wi-Fi信号的隐藏维度:ESP-CSI技术如何重新定义无线感知
  • 企业级流程引擎可视化:基于Vue的BPMN设计器架构集成方案
  • MobaXterm 许可证生成工具:高效激活跨平台终端工具的完整指南
  • 5步拆解FPGA验证中的“幽灵bug”:从“找不到”到“赖不掉”
  • 2026年LTCC专用厚膜印刷机厂家推荐:厚膜印刷机/圆管厚膜印刷机/CCD自动对位厚膜印刷机专业供应 - 品牌推荐官
  • Android AudioEffect 音效方案:从基础到高级的动态处理技术
  • 2026年牡丹江新能源汽修无损修复专业选购,靠谱的公司推荐 - 工业设备
  • Java EE开发技术 (报错解决 NoSuchBeanDefinitionException)
  • ArcGIS新手必看:5分钟搞定激光雷达LAS数据加载(附常见问题解决)
  • 黑苹果EFI配置的智能化跃迁:从经验驱动到数据驱动的范式革命
  • 2026三类6款CRM大盘点:全链路能力深度解析 - jfjfkk-