二分:路标设置(洛谷)

传送门.
在这里插入图片描述

解析

只需二分枚举空旷指数即可
对于单次判断的check函数,可以相当于n个路标把路面分成n+1个间隔,而对于每个间隔[l,r]和空旷指数x(边界已有路标),所需路标应为:

(r-l-1)/x

(比如[2,5],x=3,显然不用,所以需减1)
这样每段复杂度为O(1)
check复杂度则为O(N)
可以得到解决

update on 2022.3.17

感谢 @沉迷小说 提出的关于二分上界的问题,只需要赋值为 lll 即可,已经修正

代码

#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<iostream>
#include<string>
#include<queue>
#include<vector>
using namespace std;
const int M=1e9;
int l,n,k;
int a[100500]={ },d[100500];
bool check(int x){int num=0;for(int i=1;i<=n+1;i++){num+=(d[i]-1)/x;}return num<=k;
}
int main(){scanf("%d%d%d",&l,&n,&k);a[0]=1;for(int i=1;i<=n;i++){scanf("%d",&a[i]);d[i]=a[i]-a[i-1];//记录每段间隔长度}d[n+1]=l-a[n];int st=0,ed=l;while(st<ed){int mid=(st+ed) >> 1;if(check(mid)) ed=mid;else st=mid+1;}printf("%d",st);return 0;
}

AC快乐!!!

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

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

相关文章

二分:[BJWC2008]秦腾与教学评估

洛谷传送门 解析 因为至多有一个单数 假设其位置为k&#xff0c;1-i的累加和为s[i] 则s[1]-s[k-1]全是偶数 s[k]-s[max]全是奇数 答案呈单调性&#xff0c;可以用二分算法 check函数&#xff08;计算前缀和&#xff09;也很容易用O&#xff08;n&#xff09;写出&#xff1a…

微软Azure予力Green Dot客服成就不凡

点击蓝字关注我碧点公司&#xff08;Green Dot&#xff09;是仔细聆听消费者心声&#xff0c;以消费者为导向的金融科技创新公司&#xff0c;致力于为大众带来高效、便捷与体验舒适的个人银行业务。Green Dot创造了预付借记卡产业&#xff0c;也是美国最大的可增值预付借记卡和…

倍增:st表(模板)(洛谷P3865)

[传送门](https://www.luogu.com.cn/problem/P38 解析 板子题最棒了 用mx[i][j]存储以i为起点&#xff0c;长度为2^j次方的区间内的max 分成前后两段&#xff0c;则可以得到递推式&#xff1a; mx[i][k]max(mx[i][k-1],mx[imi[k-1]][k-1]);而关于初始化&#xff0c;显然&…

首届大湾区 DevOps/微服务秋季分享会圆满落幕!

在科技迅速发展的时代&#xff0c;传统行业积极开展数字化转型以在激烈竞争中脱颖而出&#xff0c;新兴行业不停歇地验证业务模式以找准市场定位&#xff1b;软件与行业变得密不可分&#xff0c;各行各业如何快速响应软件需求&#xff0c;已经成为直接关系到企业核心利益的关键…

.NET Core实战项目之CMS 第五章 入门篇-Dapper的快速入门看这篇就够了

写在前面上篇文章我们讲了如在在实际项目开发中使用Git来进行代码的版本控制&#xff0c;当然介绍的都是比较常用的功能。今天我再带着大家一起熟悉下一个ORM框架Dapper&#xff0c;实例代码的演示编写完成后我会通过Git命令上传到GitHub上&#xff0c;正好大家可以再次熟悉下G…

倍增:喷泉 深度解析(洛谷P7167)

洛谷传送门 解析 什么破题 数据范围来看很明显最多到nlogn 首先&#xff0c;对于样例进行一下分析&#xff1a; 我们可以把它转化为一棵树&#xff1a; 每一个根都有对应的权&#xff0c;给你一个结点和加权和&#xff0c;问能爬到哪里 既然是树&#xff0c;自然要找爸爸…

P5163-WD与地图【tarjan,整体二分,线段树合并】

正题 题目链接:https://www.luogu.com.cn/problem/P5163 题目大意 给出nnn个点mmm条有向边&#xff0c;点有权值&#xff0c;要求支持操作 删除一条边修改一个点的权值求一个点所在强连通分量中前kkk大权值和 1≤n≤105,1≤m,q≤21051\leq n\leq 10^5,1\leq m,q\leq 2\times…

分布式系统(微服务架构)的一致性和幂等性问题相关概念解析

前言什么是分布式系统?关于这点其实并没有明确且统一的定义。在我看来,只要一个系统满足以下几点就可以称之为分布式系统系统由物理上不同分布的多个机器节点组成系统的多个节点通过网络进行通信,协调彼此之间的工作。系统作为整体统一对外提供服务,其分布式细节对客户端透明。…

hash:奶牛看地图(洛谷P3405 [USACO16DEC]Cities and States S)

洛谷传送门 解析 其实就是每组2个长度为2的字符串统计交叉相等的个数 每个序列可以用一个26进制的数来表示&#xff0c;总要加个标签&#xff0c;勉强算hash。。&#xff08;想叫《水题》 &#xff09; 最大值为26*26&#xff08;ZZ&#xff09; 所以可以开一个二维数组来进…

bfs:01迷宫(洛谷P1141)

洛谷传送门 解析 乍一看&#xff1a;bfs板子题 冰法师最棒了 然鹅 看了一眼数据范围 心中已有画面 《面 堂 发 黑》 怎么办嘞&#xff1f; 我们想到&#xff1a; 因为该题来与去的可逆性 我们搜一次后&#xff0c;这些点以后都不会再用到 而且每次覆盖到的所有点答案都是…

有关C# 8.0、.NET Framework 4.8与NET Standard 2.1的一个说明

早在本月12日&#xff0c;微软官方的.NET Blog发布了一篇名为《Building C# 8.0》的文章&#xff0c;介绍了很多C# 8.0的新特性。不过本文主要讨论的并不是C# 8.0的新特性&#xff0c;而是存在于这篇文章中的一段文字&#xff1a;Most of the C# 8.0 language features will ru…

2021牛客暑期多校训练营1 J-Journey among Railway Stations(线段树+思维转化)

J-Journey among Railway Stations 注意区间合并时是否可行信息的合并。 假设线段树当前左节点lll维护的区间是[L,mid][L,\text{mid}][L,mid]&#xff0c;右节点维护的区间为[mid1,R][\text{mid1},R][mid1,R] 如果它们分别可行&#xff0c;意味着可以从L→midL\to \text{mid}…

领域驱动设计,让程序员心中有码

“ 领域驱动设计的背后&#xff0c;需要开发者不能只专注于眼前功能的实现&#xff0c;而应该能够从全局去了解业务&#xff0c;并充分的将业务吃透&#xff0c;以可传承的知识的形式融入到开发过程中&#xff0c;只有这样才能促进产品更好的开发。”01—传统项目管理模式&…

Docker最全教程——从理论到实战(二)

容器是应用走向云端之后必然的发展趋势&#xff0c;因此笔者非常乐于和大家分享我们这段时间对容器的理解、心得和实践。本篇教程持续编写了2个星期左右&#xff0c;只是为了大家更好地了解、理解和消化这个技术&#xff0c;能够搭上这波车。你可以关注我们的公众号“magiccode…

图论模板详解:存图

图论千万条&#xff0c;存图第一条 1.邻接矩阵 用一个矩阵x[i][j]表示i到j的路径 优点&#xff1a;代码方便&#xff0c;易于去重 缺点&#xff1a;空间复杂度爆炸 优化&#xff1a;二维vector&#xff08;但是会变慢&#xff09; 2.链式前向星 &#xff08;抄资料毫不掩饰&a…

eShopOnContainers 知多少[4]:Catalog microservice

引言Catalog microservice&#xff08;目录微服务&#xff09;维护着所有产品信息&#xff0c;包括库存、价格。所以该微服务的核心业务为&#xff1a;产品信息的维护库存的更新价格的维护架构模式如上图所示&#xff0c;本微服务采用简单的数据驱动的CRUD微服务架构&#xff0…

2021牛客暑期多校训练营3 I-Kuriyama Mirai and Exclusive Or(异或+差分)

I-Kuriyama Mirai and Exclusive Or KeHe题解 diabolusexnihil题解 不过diabolusexnihil大佬的题解有一部分写错了应该是&#xff1a;每次分裂标记bl,ib_{l,i}bl,i​需要给数组[l2i−1,l2i)⊕2i−1[l2^{i-1},l2^i)\oplus2^{i-1}[l2i−1,l2i)⊕2i−1然后标记分裂成bl,i−1,bl2…

P5748-集合划分计数【EGF,多项式exp】

正题 题目链接:https://www.luogu.com.cn/problem/P5748 题目大意 求将nnn的排列分成若干个无序非空集合的方案。 输出答案对998244353998244353998244353取模。 1≤n≤105,1≤T≤10001\leq n\leq 10^5,1\leq T\leq 10001≤n≤105,1≤T≤1000 解题思路 就是求划分数 分成ii…

ASP.NET Core 实战:将 .NET Core 2.0 项目升级到 .NET Core 2.1

一、前言最近一两个星期&#xff0c;加班&#xff0c;然后回去后弄自己的博客&#xff0c;把自己的电脑从 Windows 10 改到 Ubuntu 18.10 又弄回 Windows 10&#xff0c;原本计划的学习 Vue 中生命周期的相关知识目前也没有任何的进展&#xff0c;嗯&#xff0c;罪过罪过。看了…

2021牛客暑期多校训练营4 B-Sample Game(概率DP)

B-Sample Game ding_ning123大佬题解 注&#xff1a;上述题解图片来自ding_ning123大佬题解 Code #include<bits/stdc.h> using namespace std; using lllong long; template <class Tint> T rd() {T res0;T fg1;char chgetchar();while(!isdigit(ch)) {if(ch-…