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

P1033 自由落体【洛谷算法习题】

P1033 自由落体

网页链接

P1033 自由落体

题目描述

在高为H HH的天花板上有n nn个小球,体积不计,位置分别为0 , 1 , 2 , ⋯ , n − 1 0,1,2,\cdots,n-10,1,2,,n1。在地面上有一个小车(长为L LL,高为K KK,距原点距离为S 1 S_1S1)。已知小球下落距离计算公式为d = 0.5 × g × ( t 2 ) d=0.5 \times g \times (t^2)d=0.5×g×(t2),其中g = 10 g=10g=10t tt为下落时间。地面上的小车以速度V VV前进。

如下图:

小车与所有小球同时开始运动,当小球距小车的距离≤ 0.0001 \le 0.00010.0001(感谢 Silver_N 修正) 时,即认为小球被小车接受(小球落到地面后不能被接受)。

请你计算出小车能接受到多少个小球。

输入格式

H , S 1 , V , L , K , n H,S_1,V,L,K,nH,S1,V,L,K,n1 ≤ H , S 1 , V , L , K , n ≤ 100000 1 \le H,S_1,V,L,K,n \le 1000001H,S1,V,L,K,n100000

输出格式

小车能接受到的小球个数。

输入输出样例 #1

输入 #1

5.0 9.0 5.0 2.5 1.8 5

输出 #1

1

说明/提示

当球落入车的尾部时,算作落入车内。

【题目来源】

NOIP 2002 提高组第三题

解题思路

本题核心是通过物理公式推导+区间范围判断统计小车可接收的小球数:首先根据自由落体公式d = 0.5 × g × t 2 d=0.5×g×t²d=0.5×g×t2g = 10 g=10g=10),推导小球落到小车顶部(高度K KK)的时间t m i n = ( H − K ) / 5 t_{min}=\sqrt{(H-K)/5}tmin=(HK)/5,落到地面的时间t m a x = H / 5 t_{max}=\sqrt{H/5}tmax=H/5;小车以速度V VV向左移动,t tt时间内位移为V × t V×tV×t,因此小球i ii的水平位置需满足s 1 − t m a x × V ≤ i ≤ s 1 − t m i n × V + L s1 - t_{max}×V ≤ i ≤ s1 - t_{min}×V + Ls1tmax×Vis1tmin×V+L(小车有效水平范围);最后统计该区间内且0 ≤ i < n 0≤i<n0i<n的小球数量,即为答案。该方法通过数学公式直接计算区间边界,无需遍历所有小球,时间复杂度O ( 1 ) O(1)O(1),适配n ≤ 1 e 5 n≤1e5n1e5的规模,精准统计可接收的小球数。

总结

  1. 核心逻辑:推导小球下落的时间区间,结合小车位移计算可接收小球的水平区间,统计区间内的小球数。
  2. 关键操作:计算t m i n t_{min}tmin(落到小车顶部)、t m a x t_{max}tmax(落到地面),推导小球水平位置的合法区间,取与[ 0 , n ) [0,n)[0,n)的交集统计数量。
  3. 效率保障:纯数学公式计算,无遍历操作,时间复杂度O ( 1 ) O(1)O(1),适配题目数据规模(n ≤ 1 e 5 n≤1e5n1e5)。

代码内容

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;typedefunsignedlonglongull;typedefvector<vector<ll>>vt;typedefpair<ll,ll>pll;constll N=1e5+10;constll mod=1e9+7;constll INF=1e18;intmain(){ll n;doubleh,s1,v,l,k;cin>>h>>s1>>v>>l>>k>>n;doublet_max=sqrt(h/5);doublet_min=sqrt((h-k)/5);ll b=ll(s1-t_min*v+l),e=ll(s1-t_max*v);b=min(b,n);e=max(e,0ll);cout<<b-e<<endl;return0;}
http://www.jsqmd.com/news/523275/

相关文章:

  • 不止于模型:华野模型构建“实体沙盘+数字交互+展厅全案”三维服务生态 - 深度智识库
  • 2026年好用的沥青净味剂老牌厂家排名,北京盛德海文上榜了吗? - 工业品牌热点
  • 2026年麻将机品牌前十名推荐:商用棋牌室高效耐用高性价比型号对比分析 - 品牌推荐
  • 2026年深圳数码纸箱打印机排名,安德生凭实力上榜值得推荐 - 工业推荐榜
  • 2026 大模型 API 价格一览:GPT-5/Claude 4.6/Gemini 3/DeepSeek V3 费率实测对比
  • STM32 GPIO模拟OneWire协议实战:手把手教你与DS2431 EEPROM通信
  • 计算机组成原理教学革新:Wan2.1-UMT5生成CPU工作流程动画视频
  • 2026年泰州农村自建房厨房痛点解决:奥力星不锈钢橱柜守护耐用健康 - 速递信息
  • 角点特征检测技术:Harris与Harris-Laplace算法研究
  • Java中如何使用枚举类型表示固定常量
  • 北京移动GPON光猫连接参数
  • STM32事件与中断的硬件级对比:如何用EXTI触发ADC和定时器(附电路图分析)
  • 《Python程序设计与算法基础教程》P41部分练习题解答
  • ESP32Time库详解:RTC时间管理与嵌入式本地化实践
  • Spring AI RAG Pipeline 深度分析
  • 一个b/s的方案有几种选择
  • WPF新手村教程(六)— 新手村BOSS战前准备(命令)
  • 国标GB28181视频汇聚平台EasyCVR智慧社区全场景可视化管控与智能安防实践
  • 2025-2026年AI营销智能体公司推荐:应对市场波动与预算压力的智能决策伙伴盘点 - 品牌推荐
  • DM8数据库容灾避坑手册:从备份恢复到应急方案的全套操作实录(含PSEG_RECV参数详解)
  • C盘空间告急?保姆级教程:为Kali WSL2搬家到D盘并安装kali-linux-large工具包
  • 中小企业数字化转型,优先选 RPA 还是 AI Agent?:2026企业自动化架构选型深研
  • C语言游戏开发:Pygame、SDL、OpenGL深度解析
  • RecyclerView Demo - Android列表组件详解
  • SEO_ 内容营销中如何自然融合SEO关键词的策略
  • 网络协议分析(CTF 入门博客)
  • 2026年集装箱翻转机厂家推荐:山东金贯通用机械有限公司,移动式集装箱翻转机/双车道集装箱翻转机厂家精选 - 品牌推荐官
  • 国产CRM真实体验如何?2026年十大用户推荐CRM系统排行 - SaaS软件-点评
  • Java类间变量共享与进度更新的实现策略
  • 2026食品/餐饮虫控新选择:景隆智能灭蝇灯,用数据终结蝇害困扰 - 速递信息