洛谷P1901 发射站

 P1901 发射站

    • 245通过
    • 468提交
  • 题目提供者该用户不存在
  • 标签NOI导刊云端↑
  • 难度普及/提高-
  • 时空限制1s / 128MB

 提交  讨论  题解  

最新讨论更多讨论

  • 大神路过的看一下
  • 输入后面为什么带空格。
  • 有人说是单调队列,但不明明…

题目描述

某地有 N 个能量发射站排成一行,每个发射站 i 都有不相同的高度 Hi,并能向两边(当 然两端的只能向一边)同时发射能量值为 Vi 的能量,并且发出的能量只被两边最近的且比 它高的发射站接收。

显然,每个发射站发来的能量有可能被 0 或 1 或 2 个其他发射站所接受,特别是为了安 全,每个发射站接收到的能量总和是我们很关心的问题。由于数据很多,现只需要你帮忙计 算出接收最多能量的发射站接收的能量是多少。

输入输出格式

输入格式:

 

第 1 行:一个整数 N;

第 2 到 N+1 行:第 i+1 行有两个整数 Hi 和 Vi,表示第 i 个人发射站的高度和发射的能量值。

 

输出格式:

 

输出仅一行,表示接收最多能量的发射站接收到的能量值,答案不超过 longint。

 

输入输出样例

输入样例#1:
3
4 2 
3 5 
6 10
输出样例#1:
7

说明

对于 40%的数据,1<=N<=5000;1<=Hi<=100000;1<=Vi<=10000;

对于 70%的数据,1<=N<=100000;1<=Hi<=2,000,000,000;1<=Vi<=10000;

对于 100%的数据,1<=N<=1000000;1<=Hi<=2,000,000,000;1<=Vi<=10000。

分析:直接暴力肯定是不行的,如果我们从某一点i考虑,那么其左边比它小的则可以忽略,右边也同样如此,也就是说,我们需要设计一种数据结构,使得可以快速查找到i左右比它大的第一个点,可以利用单调栈。和单调队列不同,单调栈只能在栈顶进行操作,但维护方法差不多,如果要维护递增的,则从栈顶弹出元素直到比当前值大,这里说的递增是从栈顶到栈尾。对于本题而言,我们只需要维护两次单调栈即可.

#include <iostream>  
#include <cstdlib>  
#include <cstdio>  
#include <cstring>  
#include <string>  
#include <algorithm>
#include <queue>
#include <stack>using namespace std;int n, h[1000010], v[1000010],top,stk[1000010],num[1000010],t[1000010],ans;void update(int x)
{while (top && t[top] <= h[x])top--;num[stk[top]] += v[x];stk[++top] = x;t[top] = h[x];
}int main()
{scanf("%d", &n);for (int i = 1; i <= n; i++)scanf("%d%d", &h[i], &v[i]);for (int i = 1; i <= n; i++)update(i);top = 0;for (int i = n; i >= 1; i--)update(i);for (int i = 1; i <= n; i++)ans = max(ans, num[i]);printf("%d\n", ans);return 0;
}

 

转载于:https://www.cnblogs.com/zbtrs/p/7041717.html

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

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

相关文章

gx works2 存储器空间或桌面堆栈不足_静态体验奇瑞艾瑞泽GX冠军版,细节做工很精湛...

奇瑞艾瑞泽GX冠军版车型正式上市。编辑近日趁着区域上市的机会&#xff0c;对其进行了静态体验。这车怎么样&#xff1f;分几个方面来看看外观方面&#xff0c;运动范儿十足&#xff0c;看着就年轻&#xff0c;一副活力四射的样子。得益于fastback极速凌动的设计元素&#xff0…

我这几年呆的这几个公司

之前发的丰富的经历我12年硕士毕业&#xff0c;历经华为&#xff0c;某芯片原厂外企&#xff0c;某芯片原厂国企&#xff0c;某手机公司&#xff0c;最后来到大疆&#xff0c;可以说是一个跳槽小能手&#xff0c;因为具有多家大企业的工作经历&#xff0c;我觉得谈下自己在各个…

mysql 主键 最佳实践_Spring Data Jpa + MySQL IDENTITY 主键下批量插入最佳实践

Spring Data Jpa 虽然可以使用参数调整批量插入&#xff0c;但是仅限于主键策略不是 IDENTITY 的情况下&#xff0c;对于习惯了使用 IDENTITY 的 MySQL 选手来说&#xff0c;批量插入数据直接就悲剧了。幸好我们还有 JdbcTemplate 这个利器&#xff0c;我们使用 Spring Data Jp…

nsoutlineview 搜索_阿里巴巴搜索推荐广告三位一体的在线服务体系

最近在工作中大量使用到了淘系的在线分发服务体系&#xff0c;可以快速高效的实现个性化内容分发&#xff0c;其技术架构的概览在这里分享给大家。AIOS(Artificial Intelligence Online Serving)是阿里巴巴集个性化搜索、推荐、广告三位一体的在线服务平台。在大型互联网公司里…

为了生活

前几天&#xff0c;我刚刚满30岁&#xff0c;30岁的那天&#xff0c;过得很深刻&#xff0c;高烧了40度&#xff0c;每次发烧我都没有去医院&#xff0c;这次也一样&#xff0c;潜意识里面觉得它一定会来&#xff0c;潜意识里面也知道它一定会走&#xff0c;不管是40度还是45度…

深度ip转换器手机版app_手机大师智能管家app下载-手机大师智能管家app官网版 v1.0.0...

手机大师智能管家app&#xff1a;针对各种手机垃圾快速在线清除的软件&#xff0c;利用这款软件可以快速的清除各种不同的手机垃圾&#xff0c;而且还可以一键在线加速&#xff0c;更好的享受手机加速带来的便捷&#xff0c;同时针对各种文件清理也更加的简单&#xff0c;让你更…

小米19999

以前没有钱买小米现在也是&#xff0c;没有钱买小米19999的小米可能会比较贵但是看完这几个动图再决定要不要切肾毕竟肾只有一个消息提示调节音量播放音乐玩游戏CS通知栏充电好像有几次文章都说明了我有好多好多朋友在做手机所以我对手机其实没有多大新鲜感不是因为贵了就买而是…

Maven配置项目依赖使用本地仓库的方法汇总

Maven配置项目使用本地仓库有以下方式实现&#xff1a; 1、类似本地仓库&#xff0c;但是属于本地依赖&#xff0c;比如某个JAR包是引用第三方的&#xff0c;直接放在了项目的lib文件夹&#xff0c;那么此时可以如下配置项目的POM&#xff1a; <dependency><groupId&g…

html5+css3第一次作业_“台风爷爷,让我作业飞走!”南京小学生写的诗都这么逆天了?...

小学生的脑洞能有多大&#xff1f;看看他们写的诗就知道了&#xff01;最近&#xff0c;南京游府西街小学四年(6)班孩子们的语文作业火了&#xff0c;一个个神句让老师都不得不服气。赶紧戳图来看↓↓↓语文老师严杏村介绍&#xff0c;原本的作业是抄写儿童现代诗&#xff0c;但…

小心内存对齐

什么是内存对齐&#xff1f;CPU在读取内存地址的时候&#xff0c;一定按照一定的偏移量去读取&#xff0c;不知道你发现了没有&#xff0c;我们没有看到一个变量的大小是 3 个字节的&#xff0c;都是 1 个字节&#xff0c;2个字节&#xff0c;4个字节&#xff0c;8个字节&#…

mysql为什么不驼峰_为什么不用驼峰命名创建表名和字段?

其实&#xff0c;这是一种规范&#xff0c;而不是一种规则。所以你使用驼峰来命名也是可以的&#xff0c;但是我们要避免用驼峰来命名。不只是数据库&#xff0c;就是平常的程序也是&#xff0c;因为&#xff1a;MYSQL 5.7 FEATURES. THIS MANUAL DESCRIBES FEATURES THAT ARE …

JavaScript获取select下拉框中的第一个值

JavaScript获取select下拉框中的第一个值 1、说明 获取select下拉框中的第一个值 2、实现源代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns&quo…

好用的平板电脑_支架里的变形金刚让手机、电脑、平板更好用!6种角度,1秒切换...

六 月 惊 喜戳 这 里嗨&#xff0c;我是专注研究数码3C产品的小嘻~对于当代人来说&#xff0c;办公、学习、娱乐离不开三件宝&#xff1a;手机、平板、电脑。手机不离手&#xff0c;沟通工作、看剧、刷抖音&#xff0c;没留神几个小时就过去了&#xff0c;放下手机的时候就觉得…

推荐一位AI技术人

今天推荐认识的一个朋友&#xff0c;推荐的原因很简单&#xff0c;因为他非常喜欢篮球&#xff0c;正统校队篮球队员&#xff0c;这个AI相关的公众号一直是他个人运营&#xff0c;写了非常多的文章&#xff0c;如果大家有在学习AI相关的知识&#xff0c;强烈推荐关注。AI蜗牛车…

python从入门到大神系列手机_python从入门到大神---2、和Python编程相遇的日子

python从入门到大神---2、和Python编程相遇的日子一、总结一句话总结&#xff1a;python2和python3是很不同的&#xff0c;连语法都不同&#xff0c;比如 print 函数打印结果1、python中pip安装的包放在哪&#xff1f;lib\site-packages\包名\&#xff1a;包总是被安装在python…

flask 安装

flask官网 &#xff1a; http://docs.jinkan.org/docs/flask/installation.html &#xff08;基本上就是按照官网思路一点一点来的&#xff09; 1&#xff0c;安装easy_install: wget -q http://peak.telecommunity.com/dist/ez_setup.pypython ez_setup.py 2&#xff0c;安装…

如何 给给软件开发 添加 代理_敏捷开发是如何被跑偏的

今天聊聊敏捷软件过程。先说结论&#xff1a;据我观察&#xff0c;至少有60%的团队误用了敏捷软件过程&#xff0c;或者说至少60%的团队在进行伪敏捷开发。与大家通常的认知是相反的&#xff0c;敏捷过程并不是一个非常容易实践或者实施的过程规范。通常来讲&#xff0c;没有天…

在实时操作系统里随便写代码都能硬实时吗?

这是转发宋老师写的文章&#xff0c;我也是刚知道&#xff0c;宋老师跟我一样也是养娃的人了&#xff0c;国庆期间&#xff0c;看看文章&#xff0c;看看升升国旗。很久没有写技术文章了&#xff0c;做码农难&#xff0c;做养娃的码农更难&#xff0c;趁着娃看动画片的机会&…

《C程序设计语言》-第2章-习题

本人写的代码可能与标准答案有出入&#xff0c;但运行是没问题的&#xff0c;欢迎大家相互参考学习。 《C程序设计语言习题》2-1&#xff1a; 编写一个程序以确定分别由signed及unsigned限定的char、short、int及long类型变量的取值范围。采用打印标准头文件中的相应值以及直接…

python 数据分析 实际案例_python实战案例:超市营业额数据分析

实战是学习的最好途径&#xff0c;效率最高&#xff0c;本文不是很长&#xff0c;通过小小的练习&#xff0c;让大家综合运用基础知识&#xff0c;加深印象巩固记忆。一、读入数据&#xff0c;了解数据本数据随机生成的假数据&#xff0c;读者可以自己造&#xff0c;也可以通过…