题解:AT_abc385_f [ABC385F] Visible Buildings
小学二年级就会的基本一次函数知识。
抽象一下题意:
求 \(n\) 个点 \((X_i, H_i)\) 中任意两个点组成的直线的截距的最大值(不小于 \(0\),\(X_i\) 递增)。
先说结论:先特判 \(n = 1\),然后答案只可能是由编号相邻的两个点组成的一次函数的截距。
为了方便,我们记 \(B\{(a, b), (c, d)\}\) 为 \((a, b)\)、\((c, d)\) 两点组成的一次函数的截距。
若 \(B \{ (X_i, H_i), (X_{i + 1}, H_{i + 1}) \} \lt B \{ (X_{i - 1}, H_{i - 1}), (X_{i + 1}, H_{i + 1}) \}\);
则必有 \(B \{ (X_{i - 1}, H_{i - 1}), (X_{i + 1}, H_{i + 1}) \lt B \{ (X_{i - 1}, H_{i - 1}), (X_{i}, H_{i}) \}\)。
证明:
根据已知条件,\((X_i, H_i)\) 必在直线 \((X_{i - 1}, H_{i - 1}) \leftrightarrow (X_{i + 1}, H_{i + 1})\) 之下。
那么 \((X_{i + 1}, H_{i + 1})\) 就在直线 \((X_{i - 1}, H_{i - 1}) \leftrightarrow (X_{i}, H_{i})\) 之上。
(可能语言有点疏漏太抽象,看图就好理解了)
(注:上文结论可以用三角形的性质来严格证明,读者自证不难)
那么只需要枚举出任意两个编号相邻的点算一次函数的截距,并取最大值即可。
如果你不知道一次函数相关知识,那就别做这题学习一下罢。
给一个斜率与截距的计算公式:
\]
不给代码了。
题解:AT_abc385_f [ABC385F] Visible Buildings的更多相关文章
- 【紫书】Urban Elevations UVA - 221 离散化
题意:给你俯视图,要求依次输出正视图中可以看到的建筑物 题解:任意相邻的x间属性相同,所以离散化. 坑:unique只能对数组用.下标易错 list不能找某元素的next.用了个很麻烦的处理 数组: ...
- UVa 221城市正视图(离散化)
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...
- X - Urban Elevations
Urban Elevations An elevation of a collection of buildings is an orthogonal projection of the buil ...
- UVa 221 (STL 离散化) Urban Elevations
题意: 作图为n个建筑物的俯视图,右图为从南向北看的正视图,按从左往右的顺序输出可见建筑物的标号. 分析: 题中已经说了,要么x相同,要么x相差足够大,不会出现精度问题. 给这n个建筑物从左往右排序, ...
- UVA 221 - Urban Elevations(离散化)!!!!!!
题意:给出一张俯视图.给出N个建筑物的左下标,长度,宽度,高度.现在求,从南面看,能看到那些建筑? Sample Input 14 160 0 30 60 30 125 0 32 28 60 95 0 ...
- Urban Elevations UVA - 221
题目大意:给出建筑的俯视图,以及每个建筑的左下角坐标,宽度,长度,高度.求正视图可观察到的建筑的编号 思路:建筑物的可见性等于南墙的可见性,依据左下角排序后,逐个判断每个建筑是否可见.对南墙的x坐标进 ...
- UVA 221 Urban Elevations
思路: 一些解释: ①:建筑的排序: 下面是以输入顺序为标号,在数组bd中的顺序: 排序后在数组bd中的顺序: 以后我们比较就按这个顺序 ②:x坐标的排序 x的内容是每一个建筑的左边界和右边界,我们把 ...
- 紫书第5章 C++STL
例题 例题5-1 大理石在哪儿(Where is the Marble?,Uva 10474) 主要是熟悉一下sort和lower_bound的用法 关于lower_bound: http://blo ...
- UVa 221 Urban Elevations 城市正视图 离散化初步 无限化有限
转载请注明: 仰望高端玩家的小清新 http://www.cnblogs.com/luruiyuan/ 题目大意: 题目传送门:UVa 221 Urban Elevations 给出城市中建筑物的x, ...
- UVa221 Urban Elevations
离散化处理.判断建筑可见性比较麻烦.下面采用离散化解决:把所有的x坐标排序去重,在相邻两个x坐标表示的区间中,整个区间要么同时可见,要么同时不可见.如何判断该区间是否可见?具体做法是选取该区间中点坐标 ...
随机推荐
- NOIP2023模拟9联测30 T4 金牌
NOIP2023模拟9联测30 T4 金牌 LCA 还能 \(O(1)\)-- 思路 思路非常简单,可考试就是想歪成统计指数了-- 将一条穿过 \((x,y)\) 的路径 \((u,v)\) 分为 \ ...
- JAVA反序列化学习-前置知识(基于ysoserial)
本人在学习Java反序列化中,发现网上大多都是自己分析一些逻辑内容,导致可能每一个版本的payload都不相同,对于学习时并不友好,所以我在学习了cc链之后,准备总结一下cc链中的内容,并以ysose ...
- Linux之远程挂载SSHFS
SSHFS(Secure SHell FileSystem)是一个客户端,可以让我们通过 SSH 文件传输协议(SFTP)挂载远程的文件系统并且在本地机器上和远程的目录和文件进行交互. SFTP 是一 ...
- Linux禁止某个sudo用户修改root密码
(1) 假设被禁止的sudo用户名为 user (2) 禁止user用户使用passwd命令更改密码(非最终配置) vim /etc/sudoers 加入 user ALL=(root)!/usr/b ...
- ThreeJs-06详解灯光与阴影
一.gsap动画库 1.1 基本使用和原理 首先直接npm安装然后导入 比如让一个物体,x轴时间为5s 旋转同理 动画的速度曲线,可以在官网的文档找到 1.2 控制动画属性与方法 当然这里面也有一些方 ...
- GPU 驱动漏洞:窥探驱动漏洞利用的技术奥秘
GPU 驱动漏洞:窥探驱动漏洞利用的技术奥秘 本文尝试以 GPU 漏洞为引介绍围绕 GPU 驱动这一攻击面,安全研究人员对内核漏洞利用技术做的一些探索. 背景介绍 目前移动 SOC 平台上由多个硬件模 ...
- 在PlatformIO IDE中对ESP32的CPU主频等进行配置
前言 rt,有一天开发中需要尽可能发挥ESP32的全部性能,提高主频自然是首选,在Arduino IDE中修改主频很方便,但在PlatformIO IDE中修改主频的方法网上说的却很少,今天就总结一下 ...
- 洛谷P7911 [CSP-J 2021] 网络连接题解
普通的模拟题,数据很小,基本排除超时超空间的可能 上代码: #include<bits/stdc++.h> #define LL long long using namespace std ...
- 对象存储 COS 推出一站式内容审核服务,助力打造绿色互联网
今年,国家网信办深入推进"清朗·春节网络环境"专项行动.截至3月24日,网信办共累计清理相关违法违规信息208万余条,处置账号7.2万余个,协调关闭.取消备案网站平台2300余家. ...
- solon 集成 activemq-client (sdk)
原始状态的 activemq-client sdk 集成非常方便,也更适合定制.就是有些同学,可能对原始接口会比较陌生,会希望有个具体的示例. <dependency> <group ...
