P1542 包裹快递 (二分答案)(内附封面)

news2024/10/5 14:27:26

包裹快递

题目描述

小 K 成功地破解了密文。但是乘车到 X 国的时候,发现钱包被偷了,于是无奈之下只好作快递员来攒足路费去 Orz 教主……

一个快递公司要将 n n n 个包裹分别送到 n n n 个地方,并分配给邮递员小 K 一个事先设定好的路线,小 K 需要开车按照路线给的地点顺序相继送达,且不能遗漏一个地点。小 K 得到每个地方可以签收的时间段,并且也知道路线中一个地方到下一个地方的距离。若到达某一个地方的时间早于可以签收的时间段,则必须在这个地方停留至可以签收,但不能晚于签收的时间段,可以认为签收的过程是瞬间完成的。

为了节省燃料,小 K 希望在全部送达的情况下,车的最大速度越小越好,就找到了你给他设计一种方案,并求出车的最大速度最小是多少。

输入格式

第 1 行为一个正整数 n n n,表示需要运送包裹的地点数。

下面 n n n 行,第 i + 1 i+1 i+1 行有 3 个正整数 x i , y i , s i x _ i, y _ i, s _ i xi,yi,si,表示按路线顺序给出第 i i i 个地点签收包裹的时间段为 [ x i , y i ] [x _ i, y _ i] [xi,yi],即最早为距出发时刻 x i x _ i xi,最晚为距出发时刻 y i y _ i yi,从前一个地点到达第 i i i 个地点距离为 s i s _ i si,且保证路线中 x i x _ i xi 递增。

可以认为 s 1 s _ 1 s1 为出发的地方到第 1 1 1 个地点的距离,且出发时刻为 0 0 0

输出格式

仅包括一个正数,为车的最大速度最小值,结果保留两位小数。

样例 #1

样例输入 #1

3
1 2 2
6 6 2
7 8 4

样例输出 #1

2.00

提示

数据范围

  • 对于 20 % 20\% 20% 的数据, 0 < n ≤ 10 0 < n \le 10 0<n10
  • 对于 30 % 30\% 30% 的数据, 0 < x i , y i , s i ≤ 1000 0<x_i,y_i,s_i \le 1000 0<xi,yi,si1000
  • 对于 50 % 50\% 50% 的数据, 0 < n ≤ 1000 0<n \le 1000 0<n1000
  • 对于 100 % 100\% 100% 的数据, 0 < n ≤ 2 × 1 0 5 0<n \le 2\times10^5 0<n2×105 x i ≤ y i ≤ 1 0 8 x_i \le y_i \le 10^8 xiyi108 s i ≤ 1 0 7 s_i \le10^7 si107

样例解释

第一段用 1 1 1 的速度在时间 2 2 2 到达第 1 1 1 个地点,第二段用 0.5 0.5 0.5 的速度在时间 6 6 6 到达第 2 2 2 个地点,第三段用 2 2 2 的速度在时间 8 8 8 到达第 3 3 3 个地点。

大致思路

求解最大值最小之类的问题基本会用到二分来解决,此题也一样。

首先,我们要二分什么?

本题目需要求速度,二分速度即可


check函数如何写?

以mid为当前速度模拟送快递即可


以及二分模板,因为涉及到double的精度问题,不使用 l = m i d + 1 l=mid+1 l=mid+1 r = m i d − 1 r=mid-1 r=mid1 这样的二分方式,而使用 l = m i d l=mid l=mid r = m i d r =mid r=mid


坑点!!

必须使用long double才能ac
精度在1e-5及以下
long double的输出用%.2LF(大写)

AC CODE

#include<bits/stdc++.h>
using namespace std;
const int N=1e6+2233;
long double l,r,mid,eps=1e-7;
int ans,n;
struct node{
	int x,y,s;
}a[N];
bool check(double x){
	long double now_time=0;
	for(int i=1;i<=n;i++){
		now_time+=a[i].s/x;
		if(now_time>a[i].y)return 0;
		if(now_time<a[i].x)now_time=a[i].x;
	}
	return 1;
}
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
		scanf("%d %d %d",&a[i].x,&a[i].y,&a[i].s);
	}![请添加图片描述](https://img-blog.csdnimg.cn/8c1662828ac6442ab6b0cd559eb4d298.png)

	l=0;r=1e8;
	while(r-l>eps){
		mid=(l+r)/2;
		if(check(mid)){
			r=mid;
		}
		else{
			l=mid;
		}
	}
	printf("%.2LF",l);
	return 0;
}

附封面(恋爱暴走机车)请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/820262.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PoseiSwap:首个基于模块化设施构建的订单簿 DEX

在前不久&#xff0c;PoseiSwap 曾以1000万美元的估值&#xff0c;获得了来自于ZebecLabs基金会的150万美元的融资。此后 PoseiSwap 又以2500万美元的估值&#xff0c;从GateLabs、EmurgoVentures、Republic以及CipholioVentures等行业顶级投资机构中&#xff0c;获得了新一轮未…

QMessageBox类

QMessageBox类 静态方法例子 静态方法 调用这一些静态成员函数&#xff0c;就可以得到模态提示框 枚举值为&#xff1a; 例子 头文件&#xff1a; #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QMessageBox>QT_BEGIN_NAMESPACE…

ORB算法在opencv中实现方法

在OPenCV中实现ORB算法&#xff0c;使用的是&#xff1a; 1.实例化ORB orb cv.xfeatures2d.orb_create(nfeatures)参数&#xff1a; nfeatures: 特征点的最大数量 2.利用orb.detectAndCompute()检测关键点并计算 kp,des orb.detectAndCompute(gray,None)参数&#xff1a…

跟踪项目进度,项目经理可以通过这三个方面进行

项目实施过程中&#xff0c;常常会出现一些不确定性因素&#xff0c;如未确定项目的轻重缓急、优先级变化、任务不明确、团队成员对具体内容和实施流程不清楚等。 此外&#xff0c;对项目资源的使用情况不明确也是导致项目延期的因素之一。因此&#xff0c;在项目实施前&…

Linux之 centos、Ubuntu 安装常见程序 (-) Mysql 5.7 版本和8.0版本

CentOS 安装 MySql 注意 需要有root权限 安装5.7版本 – 由于MySql并不在CentOS的官方仓库中&#xff0c;所以需要通过rmp命令&#xff1a; 导入MySQL仓库密钥 1、配置MySQL的yum仓库 配置yum仓库 更新密钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 安装…

Windows 环境Kubernetes安装

目录 前言 安装 Docker 安装 Kubernetes Windows 安装 kubectl 介绍 安装 开启 Kubernetes 前言 Docker作为当前最流行的容器化平台&#xff0c;为Kubernetes提供了强大的容器化技术基础。Kubernetes与Docker的结合&#xff0c;使得容器化应用程序在大规模集群中得以简…

C. Ski Resort (逐步累加滑动求连续子序列)

题目&#xff1a;Problem - C - Codeforces 总结&#xff1a; 对于样例1 3 1 5 -5 0 -10 转化 n3 //天数 k1 //最小天数 q5 //最适温度 设最后输出值为num;(num最初为0) 操作一&#xff1a; 从-5统计 -5 小于最适温度5 可取 可取…

简单的python有趣小程序,有趣的代码大全python

这篇文章主要介绍了python简单有趣的程序源代码&#xff0c;具有一定借鉴价值&#xff0c;需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获&#xff0c;下面让小编带着大家一起了解一下。

服务器中了360后缀勒索病毒怎么解决,360后缀勒索病毒解密数据恢复

某医药公司是一家小型企业&#xff0c;拥有自己的服务器存储重要数据和文件。某天早上&#xff0c;IT管理员发现企业服务器中了360后缀的勒索病毒&#xff0c;所有数据文件都被加密了。这个病毒的入侵让公司业务受到严重影响&#xff0c;企业立即启动了勒索病毒解密数据恢复的措…

HCIP-datacom-821题库真题和机构资料

HCIP-Datacom-Core Technology考试内容 HCIP-Datacom-Core Technology V1.0考试覆盖数据通信领域各场景通用核心知识&#xff0c;包括路由基础、OSPF、IS-IS、BGP、路由和流量控制、以太网交换技术、组播、IPv6、网络安全、网络可靠性、网络服务与管理、WLAN、网络解决方案。 机…

QDialog类

QDialog类 QDialog类api 使用方式调用exec()槽函数调用accept槽函数调用reject槽函数调用done槽函数 例子 QDialog类 QWedget类中的函数&#xff0c;在QDialog中都可以使用 api // 构造函数 QDialog::QDialog(QWidget *parent nullptr, Qt::WindowFlags f Qt::WindowFlags()…

Numpy基础操作:数组之间形状相互转换

ndarray对象提供了一些可以便捷地改变数组基础形状的属性和方法&#xff0c;例如&#xff0c;将一个3行4列的二维数组转换成6行2列的二维数组&#xff0c;关于这些属性和方法的具体说明如表9-3所示。 上述这些方法都能够改变数组的形状&#xff0c;但是&#xff0c;reshape()、…

JDK1.8 切换版本之TLS协议导致项目链接数据库报错

JDK1.8 切换版本之TLS协议导致项目链接数据库报错_jdk1.8 不支持的tls1.2 吗_Lim0816的博客-CSDN博客

为什么MySQL单表不能超过2000万行?

最近看到一篇《我说MySQL每张表最好不要超过2000万数据&#xff0c;面试官让我回去等通知》的文章&#xff0c;非常有趣。 文中提到&#xff0c;他朋友在面试的过程中说&#xff0c;自己的工作就是把用户操作信息存到MySQL里&#xff0c;因为数据量超大&#xff08;5000万条左…

新版塔罗占卜网站源码八字合婚风水起名附带搭建视频

新版塔罗占卜网站源码八字合婚风水起名PHP源码附带搭建视频,附带文本教学及视频教程安装方法以linux为例: 1、建议在服务器上面安装宝塔面板,以便操作,高逼格技术员可以忽略这步操作。 2、把安装包文件解压到根目录,同时建立数据库,把数据文件导入数据库 3、修改核心文件…

博客园自定义样式美化

<script type"text/javascript">window.cnblogsConfig {info: {name: XXXXXX, // 用户名startDate: XXXXXX, // 入园时间&#xff0c;年-月-日。入园时间查看方法&#xff1a;鼠标停留园龄时间上&#xff0c;会显示入园时间blogIcon: https://images.cnblogs.…

SQL-每日一题【1084. 销售分析III】

题目 Table: Product Table: Sales 编写一个SQL查询&#xff0c;报告2019年春季才售出的产品。即仅在2019-01-01至2019-03-31&#xff08;含&#xff09;之间出售的商品。 以 任意顺序 返回结果表。 查询结果格式如下所示。 示例 1: 解题思路 前置知识 between and between…

GifGun for Mac插件,帮你输出GIF动画格式

GifGun for Mac是一款安装在After Effects中使用的AE快速输出GIF动图格式插件&#xff0c;你可以使用gifgun插件直接输出GIF动画格式&#xff0c;支持自定义GIF文件的大小、帧数率等各种属性&#xff01; AE插件下载-GifGun for Mac(AE快速输出GIF动图格式插件)支持AE 2022- Ma…

第二次后端复习(集合框架、IO流、多线程)

1. 集合框架 Java集合类主要有两个根接口Collection和Map派生出来 Collection派生两个子接口 List List代表了有序可重复集合&#xff0c;可以直接根据元素的索引进行访问Set Set代表无序不可重复集合&#xff0c;只能根据元素本身进行访问 Map接口派生 Map代表的是存储key…

企业搭建知识库,为什么倾向于私有化部署

在当今信息爆炸的时代&#xff0c;随着企业的发展扩大&#xff0c;企业内部知识分散在每个员工的电脑上&#xff0c;信息冗余&#xff0c;存在多份数据&#xff0c;难以做到统一&#xff1b;文档涉密权限问题管理难度大、监控成本高、管理难度大。企业面临着处理和管理大量知识…