码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Meeting on the Line codeforces 1730B


    Problem - B - Codeforces

    题目大意:有n个人分布在数轴上,给出每个人的坐标位置xi,和出发前得到准备时间ti,要求选定一个位置x0,使得每个人到达这个地方的时间的最大值最小

    1<=n<=2e5;1<=xi<=1e8;1<=ti<=1e8

    思路:首先我们可以考虑如果ti全部等于0的时候,那么到达时间最大值的最小值肯定是数轴上最靠左的点和最靠右的点的中点,那么再看有ti的时候,当准备时间最长的那个人准备好了之后,也可以按照ti全等于0的思路考虑,需要找到这时数轴上最靠左和最靠右的点,我们要让时间最小,很显然要让靠左的点尽可能向右走,靠右的点尽量向左走,那么我们可以遍历所有点,对于每个人,算出在他准备好到准备时间最长的人准备好的这段时间里,向右走到的最远位置,在所有人中取最小值 ,和向左走到的最远位置,在所有人中取最大值,这两个数值分别为最靠左和最靠右的点,取中点即可

    1. #include
    2. #include
    3. using namespace std;
    4. const int N = 1e5 + 5;
    5. int x[N], ti[N], pos[N];
    6. int main()
    7. {
    8. int t;
    9. cin >> t;
    10. while (t--)
    11. {
    12. int n;
    13. scanf("%d", &n);
    14. for (int i = 1; i <= n; i++)
    15. {
    16. scanf("%d", &x[i]);
    17. }
    18. int ma = 0,cnt=0;
    19. for (int i = 1; i <= n; i++)
    20. {
    21. scanf("%d", &ti[i]);
    22. ma = max(ma, ti[i]);//找出准备时间最长的人
    23. }
    24. int mix = 0x7fffffff, maxx = 0;
    25. for (int i = 1; i <= n; i++)
    26. {
    27. mix = min(mix, x[i] + ma - ti[i]);//找出向右到达的位置的最小值
    28. maxx = max(maxx, x[i] - (ma - ti[i]));//找出向左到达的位置的最大值
    29. }
    30. printf("%.6lf\n", (maxx + mix) * 1.0 / 2);//最靠左和最靠右的两个点取中点
    31. }
    32. return 0;
    33. }
  • 相关阅读:
    103. 二叉树的锯齿形层序遍历
    linux java 环境变量配置
    啥?PS一秒成图?Adobe的逆天黑科技大公开
    如何将扫描的 PDF 转换为 Word
    Spring Boot 中一行代码搞定Http请求!
    特斯拉Dojo超算:AI训练平台的自动驾驶与通用人工智能之关键
    数据结构与算法(一):概述与复杂度分析
    C++算法:城市天际线问题
    CSS 圆形的时钟秒针状的手柄绕中心点旋转的效果
    快速入门基础控制台API
  • 原文地址:https://blog.csdn.net/ashbringer233/article/details/127113805
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号