向右看齐Look Up
向 右 看 齐 L o o k U p 向右看齐\ Look\ Up 向右看齐 Look Up
题目链接:luogu P2947
题目
约翰的 N ( 1 ≤ N ≤ 1 0 5 ) N(1≤N≤10^5) N(1≤N≤105)头奶牛站成一排,奶牛 i i i的身高是 H i ( l ≤ H i ≤ 1 , 000 , 000 ) H_i(l≤H_i≤1,000,000) Hi(l≤Hi≤1,000,000)。现在,每只奶牛都在向右看齐.对于奶牛 i i i,如果奶牛 j j j满足 i < j i<j i<j且 H i < H j H_i<H_j Hi<Hj,我们可以说奶牛 i i i可以仰望奶牛 j j j. 求出每只奶牛离她最近的仰望对象
输入
第 1 1 1 行输入 N N N,之后每行输入一个身高 H i H_i Hi。
输出
共 N N N 行,按顺序每行输出一只奶牛的最近仰望对象,如果没有仰望对象,输出 0 0 0。
样例输入
6
3
2
6
1
1
2
样例输出
3
3
0
6
6
0
样例解释
6 6 6 头奶牛的身高分别为 3 3 3, 2 2 2, 6 6 6, 1 1 1, 1 1 1, 2 2 2.
奶牛 1 1 1、 2 2 2 仰望奶牛 3 3 3,奶牛 4 4 4、 5 5 5 仰望奶牛 6 6 6,奶牛 3 3 3 和 6 6 6 没有仰望对象。
数据范围
对于 20 % 20\% 20%的数据: 1 ≤ N ≤ 10 1≤N≤10 1≤N≤10;
对于 50 % 50\% 50%的数据: 1 ≤ N ≤ 1 , 000 1≤N≤1,000 1≤N≤1,000;
对于 100 % 100\% 100%的数据: 1 ≤ N ≤ 100 , 000 1≤N≤100,000 1≤N≤100,000; 1 ≤ H i ≤ 1 , 000 , 000 1≤H_i≤1,000,000 1≤Hi≤1,000,000;
思路
这道题就是一道单调栈。
每次读入时就判断判断是否会被仰望,(枚举每一次的栈顶,不会就退出,会就把那个数出栈),然后把读入的数进栈。
最后我们输出所记录的仰望对象,就可以了。
代码
#include<cstdio>
using namespace std;
int n,a,ans[100001],num;
struct note
{int num,tall;
}f[100001];
int main()
{scanf("%d",&n);//读入num=1;//初始化for (int i=1;i<=n;i++){scanf("%d",&a);//读入while (a>f[num-1].tall&&num>1){ans[f[num-1].num]=i;//找仰望对象num--;//出栈}f[num++]=(note){i,a};//入栈}for (int i=1;i<=n;i++)printf("%d\n",ans[i]);//输出return 0;
}
向右看齐Look Up相关推荐
- 【单调栈】向右看齐(luogu 2947)
向右看齐 luogu 2947 题目大意: 有n头奶牛,它们各有各的高度,现在要求出每一头奶牛右边第一头比他高的奶牛是那一头 输入样例 6 3 2 6 1 1 2 输出样例 3 3 0 6 6 0 输 ...
- c语言编程*三角形图形右看齐,EOJ 3213 向右看齐
题目描述 N 头奶牛被紧急动员起来了,它们排成了一条长列.从左向右看,排在第 i 个位置的奶牛身高为 Hi.约翰一声令下,所有奶牛向右看齐.假设每头奶牛只能看到比自己高的牛.请问它们各自看到的最近的一 ...
- [USACO09MAR]向右看齐Look Up(单调栈、在线处理)
https://www.luogu.org/problem/P2947 题目描述 Farmer John's N (1 <= N <= 100,000) cows, convenientl ...
- 【单调栈】向右看齐Look Up
向右看齐Look Up 题目 约翰的N(1≤N≤10^5)头奶牛站成一排,奶牛i的身高是Hi(l≤Hi≤1,000,000).现在,每只奶牛都在向右看齐.对于奶牛i,如果奶牛j满足i<j且Hi& ...
- 【单调栈】洛谷_2947 向右看齐Look Up
题意 有N头奶牛站成一排,奶牛i的身高是Hi.现在,每只奶牛都在向右看齐.对于奶牛i,如果奶牛j满足i < < <script type="math/tex" i ...
- P2947 [USACO09MAR]向右看齐Look Up
[USACO09MAR]向右看齐Look Up 题目描述 Farmer John's N (1 <= N <= 100,000) cows, conveniently numbered 1 ...
- P2947 向右看齐
题目描述 约翰的N(1≤N≤10^5)头奶牛站成一排,奶牛i的身高是Hi(l≤Hi≤1,000,000).现在,每只奶牛都在向右看齐.对于奶牛i,如果奶牛j满足i<j且Hi<Hj,我们可以 ...
- LuoGu_2947 [USACO09MAR] 向右看齐 Look Up
题目描述 约翰的N(1≤N≤10^5)头奶牛站成一排,奶牛i的身高是Hi(l≤Hi≤1,000,000).现在,每只奶牛都在向右看齐.对于奶牛i,如果奶牛j满足i<j且Hi<Hj,我们可以 ...
- 问题 G: 向右看齐
题目描述 新学年开始了.有一批新生要军训了.休息时间到了,同学们站在自己喜欢的位置.每个位置由整数坐标(x,y)表示.同学们可以向前.向后.向左.向右移动一步,但在同一时刻任一位置点上只能有一名同学. ...
最新文章
- jQuery的.bind()、.live()和.delegate()之间区别
- 多系统权限设计(一)
- 统计学习方法第二十章作业:潜在狄利克雷分配 LDA 吉布斯抽样法算法 代码实现
- 大道至简—GO语言最佳实践
- PHP动态多文件上传的具体代码
- 数据库和数据仓库区别
- 阿里巴巴开源 Spring Cloud Alibaba,加码微服务生态建设
- 关于EMF模型的操作,赶紧记下来
- JS键盘字母相应的keyCode值
- python 验证数据类型函数
- 通过建站学运维1901-08任务
- docker 修改启动命令_Docker映射详解,没问题了!
- CentOS 7.0关闭默认firewall防火墙启用iptables防火墙
- 一个python的UG二次开发简单实例
- 2017年12月HCNP考试易错题汇总
- soul—产品体验报告
- 数据库系列(4):关系型数据库
- WSL (Windows Subsystem for Linux) wsl1+wsl2+对比+在线安装+离线安装+版本转换+右键菜单+外网访问
- Pyton入门的歪路
- 毕业相关——电网项目
热门文章
- 2021年氯化工艺考试报名及氯化工艺考试试卷
- 独石电容、瓷片电容、陶瓷电容有什么区别啊?
- FFMPEG 实现视频拼接,中间插入图片实现过渡
- 史上最简单的docker入门到放弃——(利用docker部署web应用)
- zabbix-agent配置详解
- 初中数学503个必考知识点_初中数学:21个必考知识点+重难点!打印背熟,3年不下130+!...
- 论文阅读:Push the Limit of Acoustic Gesture Recognition
- 2019年 第11届 全国大学生数学竞赛 初赛(非数学类)试题详细解答
- 老式计算机组装教程,旧机械硬盘可以装新电脑上吗?台式电脑加新/旧机械硬盘+分区教程...
- python百度地图poi_百度地图数据采集手把手教,从此POI数据不再是愁