题目地址  https://www.acwing.com/problem/content/description/602/

约翰有N头奶牛,编号为1到N。

现在这N头奶牛按编号从小到大的顺序站成了一排,其中奶牛 i 的身高为HiHi。

现在,每头奶牛都向它的右侧望向那些编号较大的奶牛,对于奶牛 i 如果存在一头奶牛 j 满足 i<ji<j 并且 Hi<HjHi<Hj,那么我们称奶牛 i 需要仰视奶牛 j。

请你求出每头奶牛的最近仰视对象。

输入格式

第一行包含整数N。

接下来N行,每行包含一个整数HiHi,其中第 i 行的数为编号为 i 的奶牛的高度。

输出格式

共 N 行,每行输出一个整数,其中第 i 行的输出整数表示编号为 i 的奶牛的最近仰视对象的编号,如果不存在仰视对象,则输出0。

数据范围

1≤N≤1e5
1≤Hi≤1e6

输入样例:

输出样例:

单调栈记录最近的未仰视的牛编号(有仰视的答案已经记录了 出栈)

 #include <iostream>
#include <vector>
#include <stack> using namespace std; const int N = 1e5+; vector<int> arr(N,);
vector<int> ans(N,);
stack<int> st;
int n ; int main()
{
cin >> n;
for(int i =;i<= n;i++){
cin >> arr[i];
} for(int i =;i <= n;i++){
while(!st.empty() && arr[i]>arr[st.top()]){
ans[st.top()] = i;
st.pop();
} st.push(i);
} while(!st.empty()){
ans[st.top()] = ;
st.pop();
} for(int i = ;i<=n;i++){
cout << ans[i] << endl;
} return ;
}

acwing 600. 仰视奶牛的更多相关文章

  1. 仰视源代码,实现memcpy

    C++实现内存的复制 通常我们使用深复制就是通过内存复制实现的,可是对象的复制涉及到基类派生类及其相关类的问题.这里不讨论. 目的为了可以明确内存复制的底层实现. void* memcpy(void* ...

  2. 仰视源代码,实现strcpy

    编程实现字符串的拷贝,不能用库函数. 一般的刚開始学习的人也许能写出来.可是要写的非常完美那就须要基本功了. char* strcpy(char* strDest, const char* strSr ...

  3. 仰视源代码,实现strcmp

    //这是系统库的实现 int strcmp(const char* src, const char* dest) { int rtn = 0; while(!(rtn = *(unsigned cha ...

  4. Revit中如何添加水平仰视平面视图

    在Revit平面视图中视角是俯视视角,但是在一些特殊的情况下,我们可能需要创建仰视视角的平面视图,例如我们需要向上看天花板的灯具布置的时候,下面举例说明添加仰视平面视图的方法. 如图在模型中有一楼板跟 ...

  5. 【AC大牛陈鸿的ACM总结贴】【ID AekdyCoin】人家当初也一样是菜鸟

    acm总结帖_By AekdyCoin 各路大牛都在中国大陆的5个赛区结束以后纷纷发出了退役帖,总结帖,或功德圆满,或死不瞑目,而这也许又会造就明年的各种"炸尸"风波.为了考虑在发 ...

  6. 撸一段 SQL ? 还是撸一段代码?

    记得刚入公司带我的研发哥们能写一手漂亮的 SQL,搜索准确.执行快.效率高. 配合Web项目中的查询展示数据的需求,基本是分分钟完成任务. 那段时间基本是仰视的态度,每天都去讨教一点手写 SQL 的要 ...

  7. Unity3D 5.x 简单实例 - 发射炮弹

    1,下载.安装: http://unity3d.com/cn/get-unity/download/archive 建议直接借助 UnityDownloadAssistant 进行安装,根据需要勾选需 ...

  8. <工作一周的心情总结>

    到公司一个星期有余,明天就要周六了,蛮开心的,兴奋的今天下午没看一点代码,哈哈~ 我做的算是代码界里最简单,最好玩,最有成就感的html,web网页的编程. 截止到目前,除了看不懂的JavaScrip ...

  9. 模糊测试——强制发掘安全漏洞的利器(Jolt 大奖精选丛书)

    模糊测试——强制发掘安全漏洞的利器(Jolt 大奖精选丛书) [美]Sutton, M.Greene, A.Amini, P. 著 段念赵勇译 ISBN 978-7-121-21083-9 2013年 ...

随机推荐

  1. js 注意事项使用误区

    1.加法注意事项 2.浮点数注意事项 3.js,数组需使用数字作为下标索引,不支持关联数组的用法.对象不能混淆使用数组的length方法,并且不能使用数字作为下标,得使用属性值作为下标使用,否则会返回 ...

  2. English: Class logogram

    IT # this is a IT type ISP ANOTHER # following is another logogram LCD PDA

  3. English:Day-to-day 1015

    device session stroll pants & trousers gist deep depth diameter D radius R merge ..

  4. 快速查看本地IP地址

    1. 新建Windows批处理文件(*.bat) @echo off echo 本机IP ipconfig|find "IPv4" echo. echo 电脑名 hostname ...

  5. java 报错 System.out.printIn 错误: 找不到符号

    java 运行 System.out.printIn() 报错 ,java System.out.println 这是错误示范 !!! System.out.printIn("仔细看看pri ...

  6. excel文字随单元格大小变化

    对于不想因为伸缩等,造成部分文字看不见 或者 格式变形等,可以采用缩小字体或适应文字: 1.excel中可以选择缩小字体填充,这样,缩小excel就不怕了:  2.word中,excel表设置适应文字 ...

  7. SpringBoot条件注解的总结

    https://blog.csdn.net/qq_31142553/article/details/86439950

  8. java之匿名内部类

    Person.java package insof; public class Person extends Object{ String name; static int age; public P ...

  9. IDEA生成可执行的jar文件

    场景 用IDEA开发一个Java控制台程序,项目完成后,打包给客户使用. 做法 首先用IDEA打开要生成jar的项目,打开后选择File->Project Structure... 选择Arti ...

  10. Springboot关于tomcat容器配置、三大组件配置、拦截器配置

    原文地址:http://www.javayihao.top/detail/172 1.tomcat配置 Springboot默认使用的就是嵌入式servlet容器即tomcat,对于web项目,如果使 ...