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

P14914 「QFOI R3」航线交汇 个人题解

题目链接

题目大意

给定 \(n+1\) 架飞机的起始位置和结束位置以及飞行的高度,要求第一架飞机与其他 \(n\) 架飞机在相同飞行时间内的距离是否在 \(d\) 的范围之内。

Solution

首先对于所有这 \(n\) 架飞机,必须满足飞行高度与第一架飞机的飞行高度差小于等于 \(d\),因为如果两架飞机飞行过程中就无法相互看到,那么全程一定无法看到,直接输出 No 就行。

然后,我们可以将每架飞机的运动看作关于时间 \(T\) 的线性函数。假设起飞时刻为 \(T=0\),降落时刻为 \(T=1\)
那么对于第 \(i\) 架飞机,它在时刻 \(T\in [0, 1]\) 的位置就可以表示为:\(s_{i}+(t_{i}-s_{i})T\),因为我们假设飞行时间为 \(1\),那么 \(t_{i}-s_{i}\) 就为该飞机的速度,所以经过时间 \(T\) 后飞机的位置就是初始位置加上飞行的高度。我们设 \(v_{i}=t_{i}-s_{i}\),于是位置就可以表示为 \(s_{i}+v_{i}T\)。当两架飞机的速度一样的时候,如果初始位置一样那么全程都可以看到,否则就全程无法看到。

如果速度不一样且满足高度条件,我们则需要寻找是否存在 \(T \in [0, 1]\) 使得 \(s_{1}+v_{1}T=s_{i}+v_{i}T\),则 \(T=\frac{s_{i}-s_{1}}{v_{1}-v_{i}}\),最后再用上面的公式得到相遇的距离为 \(s_{1}+v_{1}T\)。最后注意一个坑点,就是这道题需要输出小数点后 \(12\) 位,要注意精度问题,不然就会像我一样被卡好久。

代码:

#include<bits/stdc++.h>
#define int long long
using namespace std;
inline int read(){int x=0,f=1;char c=getchar();while(c<'0' || c>'9'){if(c=='-')f=-1;c=getchar();}while(c>='0' && c<='9'){x=x*10+c-'0';c=getchar();}return x*f;
}
int n=read(),d=read();
signed main(){int s0=read(),t0=read(),h0=read();for(int i=1;i<=n;i++){int s=read(),t=read(),h=read();if(abs(h-h0)>d){//判断飞行高度能否互相看到 puts("No");continue;}int v0=t0-s0,v=t-s;if(v0==v){//如果速度一样时 if(s==s0)//如果初始位置一样,那么全程都能看到 puts("Always");else//否则全程都看不到 puts("No");}else{double T=(double)(s-s0)/(v0-v);//计算相遇时间 if(T>=-1e-11 && T<=1.0+1e-11)//注意精度问题 printf("%.12lf\n",(double)s0+(double)v0*T);elseputs("No");}}return 0;
}
http://www.zskr.cn/news/170421.html

相关文章:

  • 必知!口碑好的实验室净化厂家
  • YOLO与Docker镜像打包:实现环境一致性的重要步骤
  • Eureka 在大数据环境中的性能优化技巧
  • IoC、DI入门案例
  • 探索AI原生应用领域大语言模型的无限可能
  • YOLO模型部署文档模板:让团队协作更高效
  • YOLO目标检测中的姿态估计融合:提升识别丰富度
  • 多表查询练习
  • 顺时针/螺旋规则 | 彻底弄懂复杂C/C++嵌套声明 const常量声明
  • 进阶-存储引擎
  • 30节大模型全栈课程:从理论到实战+500+论文,助你成为AI时代高薪工程师7_【保姆级教程】大模型从入门到实战
  • YOLO模型自动扩缩容设计:基于负载的GPU资源调度
  • YOLO与Flask/Django集成:构建Web端检测服务的路径
  • YOLO与gRPC协议集成:构建高性能内部通信链路
  • YOLO与CI/CD流水线整合:自动化测试与部署实践
  • for-each与常规for循环的效率区别
  • YOLO模型训练硬件选型建议:GPU型号对比与推荐
  • YOLO模型远程调试技巧:通过SSH连接GPU服务器
  • YOLO目标检测API设计规范:构建易用服务接口的原则
  • YOLO与Grafana仪表盘联动:可视化展示系统运行指标
  • YOLO推理耗时分解:前处理、模型、后处理各占多少?
  • 测试人员的有效需求评审与澄清技巧
  • YOLO与ONNX格式转换指南:打通不同框架的壁垒
  • 2025最新!10个AI论文平台测评:本科生写论文不再愁
  • YOLO模型热更新机制设计:不停机升级的工程实践
  • 计算机毕设java网上投稿系统 基于Java的在线稿件管理系统设计与实现 Java技术驱动的网络投稿平台构建
  • YOLO与TensorRT集成指南:极致推理加速方案出炉
  • 西门子1200立库机器人码垛机伺服视觉AGV程序大揭秘
  • 三电平BUCK变换器仿真:电压闭环与中点平衡控制之旅
  • 安防监控+YOLO完美组合?揭秘高并发场景下的Token使用优化