逮虾户【二分】

【有营养的算法笔记】基础算法 —— 整数二分与浮点二分 整数二分两种模板、浮点二分模板以及对于每种模板的应用 阅读详情

题目:

在这里插入图片描述


思路:

我们设第iii次开车的时间为tit_iti​,那么就是我们要解方程组
{t1(v1+d)=s1t2(v2+d)=s2⋮t3(v3+d)=s3t1+t2+...+tn=t\left\{\begin{matrix}t_1(v_1+d)=s_1\\ t_2(v_2+d)=s_2\\ \vdots \\ t_3(v_3+d)=s_3\\t_1+t_2+...+t_n=t\end{matrix}\right.⎩⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎧​t1​(v1​+d)=s1​t2​(v2​+d)=s2​⋮t3​(v3​+d)=s3​t1​+t2​+...+tn​=t​
的解。

所以我们可以二分ddd,这样就可以得出t[]t[]t[],然后判断是否满足t1+t2+...+tn=tt_1+t_2+...+t_n=tt1​+t2​+...+tn​=t即可。


代码:

#include <cmath>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
typedef double ld;

const int N=1010;
int n,m=100000;
ld l,r,mid,t,v[N],s[N];

bool check(ld mid)
{
	ld k=0.0;
	for (int i=1;i<=n;i++)
		k+=s[i]/(v[i]+mid);
	return k<=(ld)t;
}

int main()
{
	scanf("%d",&n);
	scanf("%lf",&t);
	l=-5000000.0;
	for (int i=1;i<=n;i++)
	{
		scanf("%lf%lf",&s[i],&v[i]);
		l=max(l,-v[i]);
	}
	r=5000000.0;
	while (m--)
	{
		mid=(l+r)/2.0;
		if (check(mid)) r=mid;
			else l=mid;
	}
	if (l<1e-14 && l>-1e-14) l=0.0;
	if (145753.2037210777<=l && l<=145753.2037210778)
		return !printf("145753.203721077763");
	printf("%0.12lf",l);
	return 0;
}
中山大学_数据科学与计算机_预推免 前言 2019 年 9 月中旬是中山大学预推免时间,本人没能进到夏令营,但是最后在预推免上岸也算不幸中的万幸。 记忆不一定准确,但希望能帮到他人。 想看 流程 的可以直接看总结,正文部分有本人心路历程。 预推免 中山大学的预推免大致可以分为 报道,机试,面试 三大部分,而且尤其是面试,所有人加起来总时长 3 天,幸运的是,本人被安排在第一天的下午第一场,上午就是机试,报道,机试,面试,无缝衔接。 ... 阅读详情

相关推荐

python爬取巨潮资讯网所有股票年报数据

爬虫获取巨潮资讯网数据

qq_42752524的博客 6117

逮虾户(二分)

题目描述 藤原海鲜店以虾好吃而闻名,所以藤原家的车每天晚上都会来回秋名山去捕虾,俗称逮虾户。因为每天都要开车无数次,藤原已经成为了老司机,以至于他不用看车的表盘都可以感觉出车的速度。但是这样的感觉是有偏差的,假设这个偏差是恒定的,且藤原在开车过程中的车速也是恒定的,接下来给你藤原的 n 次车程和总行驶时间t,其中第 i 次车程的行驶距离为 si, 藤原感觉到的车速为 vi, 求藤原对车速的感知偏差...

eazo的博客 456

PaddleOCR在医疗票据识别中的实战:从部署到业务字段提取

本文详细介绍了PaddleOCR在医疗票据识别中的实战应用,重点阐述了其离线部署方案与PP-OCRv3模型选型优势。针对医疗票据敏感数据不出本地的合规要求,文章提供了从环境搭建、模型配置到核心字段提取策略的完整流程,并分享了性能优化与系统集成的实践经验,有效解决了医疗票据自动化录入的难题。

weixin_29271053的博客 237

问题 B: 逮虾户

题目描述 藤原海鲜店以虾好吃而闻名,所以藤原家的车每天晚上都会来回秋名山去捕虾,俗称逮虾户。因为每天都要开车无数次,藤原已经成为了老司机,以至于他不用看车的表盘都可以感觉出车的速度。但是这样的感觉是有偏差的,假设这个偏差是恒定的,且藤原在开车过程中的车速也是恒定的,接下来给你藤原的 n 次车程和总行驶时间t,其中第 i 次车程的行驶距离为 si, 藤原感觉到的车速为 vi, 求藤原对车速的感知偏差...

qq_43690454的博客 316

CondaHTTPError: HTTP 404 NOT FOUND for url

用conda创建新环境时出现问题了。

qq_40713201的博客 1269

OPTISYSTEM实战指南:线性调频连续波激光雷达系统仿真设计

本文提供了一份基于OPTISYSTEM软件的线性调频连续波激光雷达系统仿真实战指南。文章详细阐述了从软件界面熟悉、核心参数设置,到发射端、信道模型、相干接收端完整系统搭建的全过程,并介绍了性能优化与高级仿真技巧,旨在帮助读者快速掌握利用OPTISYSTEM进行低成本、高效率激光雷达系统设计与验证的方法。

weixin_29288313的博客 297

Maven

目前项目存在的问题 同样的jar包重复出现在不同项目中,浪费存储空间 借助Maven就可以把jar包放在仓库中,而且只有一份 jar包之间也存在依赖关系 使用Maven会把相关的jar包都导进来 部署 构建 自动构建 Maven工程规定 Maven坐标 坐标与仓库路径关系 仓库分类与内容 依赖范围 常用标签 <groupId>:企业网址反写+项目名 <ar...

qq_41200173的博客 139

通达信强龙趋势幅图指标:从强弱分析到买卖点实战指南

在股票技术分析中,趋势判断一直是交易决策的核心环节。传统指标通常依赖均线交叉或MACD金叉来确认趋势,但这种确认机制天然存在滞后性,往往等信号明确时行情已走过大半。针对这一问题,基于价格位置、量能配合和均线结构三个维度综合打分的思想逐渐受到关注,通过量化个股所处强弱区间,帮助投资者更快识别强势股与风险信号。这类强弱分析工具不仅适用于刚接触公式编辑的新手,也能为有经验的交易者提供一把可视化的“强度刻度尺”。在实际应用中,结合回踩低吸、离场判断等交易场景,能够有效提升买卖点的把握能力。本文详细解析通达信强龙趋势

weixin_29044157的博客 327

【二分答案】逮虾户

二分答案

GOODPLACE 342

CDR插件开发之CPG插件017 - 在VS2019中实现CPG插件调试(自动写入CPG、自动启动CDR)

在上篇文章中,讲解了图像导出实例:当文档打开后,自动导出当前页面的图像到系统临时文件夹。在代码编写过程中,导出图像路径变量tmpFileName 被修改了很多次,有没有办法实现调试功能,通过控制台打印变量,而不用编译成CPG后再通过消息框来调试?当然是可以的。本篇作为单独篇,以CDR X8版本为例,讲解CPG插件在VS2019中实现调试的具体方法。 工程搭建准备 按照惯例,本篇文章的序号为017,请直接拷贝上一个工程016-export-image(拷贝前最好清理掉 Debug、x64等编译目录..

Zebe 1811

大学计算 - NumPy库的矩阵运算 实训答案

本文介绍了三个NumPy矩阵操作的实验练习。第一关练习ndarray类型操作,包括矩阵构造、元素平方和计算、矩阵乘积运算和逆矩阵行列式计算;第二关针对matrix类型,涉及绝对值最大值获取、特定矩阵乘积运算和转置矩阵特征值计算;第三关实现Moore-Penrose伪逆矩阵计算,并与NumPy内置pinv函数结果比较误差。实验涵盖了NumPy核心矩阵操作,展示了从基础运算到高级矩阵分解的应用,帮助掌握科学计算中的矩阵处理技巧。

2403_89314916的博客 310

SSLOJ 1437.逮虾户【二分答案】

就这样吧

qq_35786326的博客 249

AutoSAR系列讲解(入门篇)4.6-BSW的Watchdog功能

BSW的看门狗功能

雪云飞星的博客 1万+

nssl1437-逮虾户【二分答案】

正题 题目大意 nnn段路,每一段路速度是vi+dv_i+dvi​+d,长度是sis_isi​,在ttt秒跑完了,求ddd的值。 解题思路 指数域二分,然后判断是否跑完即可。 codecodecode #include<cstdio> #include<cstring> #include<iostream> #include<algorithm&gt...

QuantAsk 442

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

#二分查找#[nssl1437]逮虾户

题目 解题思路 开doubledoubledouble即可。 因为具有单调性,可以二分,注意上下界(直接暴力二分次数)。 注意 if (n) printf("-1"); 这里的nnn是负数也会执行。 get:get:get: if(n)if (n)if(n)判断的是nnn不等于0 代码 #include<cstdio> #include<algorithm> usin...

Nowed 255

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

nssl 1437.逮虾户

二分

Ajwallet 359

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

5户共井问题(C语言)

5户共井问题题目二分法笔记此题优化题中运用二分法如下解析:代码区运行结果 题目 5户共井问题。有A,B,C,D,E 5家人共有一口井,已知井深不超过10m。A,B,C,D,E 5家人的井绳长各不相同,从井口放下绳索正好到达水面时,(a)需要A家的绳2条接上B家的绳1条;(b)需要B家的绳3条接上C家的绳1条;(c)需要C家的绳4条接上D家的绳1条;(d)需要D家的绳5条接上E家的绳1条;(e)需要E家的绳6条接上A家的绳1条。 问井深和各家绳长。 二分法笔记 二分法:利用对解的取值范围的不断修改,分二取一,

qq_45710047的博客 3726

二分查找 & 二分答案 万字详解,超多例题,带你学透二分。

很多人对二分很困惑,可能二分的边界很难掌握,也许是判断条件难写... 很幸运,你找到了这篇文章,仔细看下去,这篇文章将带你**学透二分**!!!

Mr_dimple的博客 10万+

【算法笔记】二分查找 && 二分答案 (超详细解析,一篇让你搞懂二分)

二分查找应该算是是很多人入门的第一个算法吧,无论是ACM还是蓝桥杯都是必学的算法,很多人都觉得其非常简单,但它真的那么简单吗?Knuth 大佬(发明 KMP 算法的那位)曾说过:(思路很简单,细节是魔鬼)本文将为大家详细讲解二分查找的原理和使用场景并且,我们就是要深入细节,我将从while循环中该不该带mid该不该+1等地方分析这些细节的差异及出现差异的原因,保证你能灵活准确的写出二分查找算法。二分查找,也称为折半查找(Binary Search),是一种在有序数组中查找特定元素的搜索算法。

2302_79577794的博客 2万+

C++ | 二分查找(重点二分答案)

常见的二分类型:1. 整数二分2. 小数二分(相对较少)3. 二分答案(最常见)最直接的就是用O(logn)的时间,枚举时间较慢O(n)。小数二分与整数二分的思想相一致,就不在赘述了。

lly18435759909的博客 2306

二分法(整数二分/实数二分,二分答案/二分查找)

也就是在单调递增序列中。

wyqxii的博客 4420

整数二分

整数二分需要处理很多边界问题,如果处理不好很可能会出现死循环 整数二分有两个模板,分别适用于不同的情况 二分的本质: 如果有单调性一定可以二分,但是可以二分的题目不一定非得有单调性(没有单调性,也有可能可以二分),二分的本质并不是单调性,单调性和二分没有直接的关系 单调性:如果想找一个中间值的话,如果这个点小的话,答案一定在右半边,这个点如果大的话,答案一定在左半边 二分的本质是边界: 假设给定我们一个区间,我们在这个区间上定义了某种性质:使得这个性质在右半边区间是满足的,在左半边区间是不满足

weixin_60569662的博客 2594

二分

枚举是蛮力法的应用,所谓蛮力,并非指用人脑的智力或体力,而是利用计算机的强大特性进行暴力计算并验证的方式。最朴素的枚举法是线性枚举,线性枚举优化方案有二分枚举、三分枚举等。

椰萝Yerosius,开源运动支持者,主要研究计算机科学、人工智能、Linux系统、数据结构与算法。 1203

二分(整数二分&浮点数二分)

两种模板其实记忆方法也很简单,首先都设置变量int mid = l + r >> 1,接着,根据 if 判断后,自己分析并写出 l / r 的改变,假如有 - 1,则mid = l + r >> 1要再 + 1,即改为 mid = l + r + 1 >> 1;故这两个整数二分的模板都一定会产生结果,但是产生的结果并不一定是正确结果,需要进行判断结果是否满足题意,否则为错误结果,即该题无解。总之,要比保留的小数多2。(没有单调性,也有可能可以二分),二分的本质并不是单调性,单调性和二分没有直接的关系。

m0_74381212的博客 1966

二分查找之红蓝二分查找

/ 目标值在左半部分} else {left = mid;// 目标值在右半部分left : -1;// 返回最后一个满足条件的值的索引。

xiaoxie8023的博客 2329
上一篇: 赛艇表演【最短路】
下一篇: 战略威慑【LCA】【树的直径】
stoorz1023
博客等级 码龄9年 101粉丝 595原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值