/相当于看墙,投影之类的东西让我数多少个建筑物/

解释感觉还不到位,以后再看看

先强调这不是我原创的,只是加了注释。找到原作者后会加链接。以及改变布局

#include <cstdlib>
#include <cassert>
#include <stack>
using namespace std;
int main (void)
{
int i, n, h, count;//
while ( scanf( "%d", &n ) != EOF )//多次
{
stack<int>S;//创建了栈
count = 0;//建筑物的个数
for ( i = 0; i < n ; i ++ )
{
scanf( "%d", &h );//当前高度
while ( (!S.empty()) && (S.top()>h) )
{
count ++;
//如果栈中的大于就表示栈中就有一个,所以加1
//相当于这样Nn(这N大于周围肯定有一个)
S.pop();
}
``
if ( S.empty() )//空了话肯定要收入了
{
if ( h != 0 )
S.push(h);
}
else
{
if ( S.top() == h )//一样只需要存放一次高度就行
continue;
else if ( S.top() < h )
S.push(h);//nN(这时候不能保证所以先收入,如果后面一样)
else // S.top() > h(我当前认为是为了保险)
assert(false);
}
}
while ( !S.empty() )//多种参差不齐的高度
{
count ++;
S.pop();
}
printf( "%d\n",count );
}
return EXIT_SUCCESS;
}

随机推荐

  1. Figma 学习笔记 – Variants

    参考 Create and use variants 定义与用途 Variants 是 Component 的扩展使用方式. 它就像 HTML 元素的属性一样, 通过修改属性, 元素就会变成相应的样式 ...

  2. C# 中的 AEAD_AES_256_GCM

    注意:AEAD_AES_256_GCM Key的长度必须是32位,nonce的长度必须是12位,附加数据有可能为空值.AEAD_AES_128_GCM Key的长度必须是16位,nonce的长度必须是 ...

  3. 如何创建一个Java游戏客户端

    创建一个完整的Java游戏客户端示例是一个相对复杂的任务,因为它通常涉及图形用户界面(GUI).事件处理.游戏逻辑等多个方面.为了简化,我将提供一个基于Java Swing的简单游戏客户端示例:一个简 ...

  4. 【赵渝强老师】Oracle RAC集群的概念

    一.什么是Oracle RAC(Real Application Cluster)? Oracle RAC 是一个具有共享缓存架构的集群数据库,它克服了传统的无共享方法和共享磁盘方法的限制,为您的所有 ...

  5. android ion

    1. 简介 Android的ION子系统的目的主要是通过在硬件设备和用户空间之间分配和共享内存,实现设备之间零拷贝共享内存.说来简单,其实不易.在Soc硬件中,许多设备可以进行DMA,这些设备可能有不 ...

  6. 在实例化对象的时候new关键字具体做了哪些操作?

    a 创建了一个空对象 {}b 通过原型链把空对象和构造函数连接起来__proto__ = prototype c 构造函数的this指向新对象,并执行函数体 d 判断构造函数的返回值,返回对象就使用该 ...

  7. 什么是 vite ?

    vite 是尤雨溪团队开发的新一代前端构建工具,作者尤雨溪宣传的时候表示 vite 是下一代的构建工具,并表示自己再也不会 webpack 了 : vite 的优点主要有3点 : 第一:开发环境中,无 ...

  8. Tomcat通信概念篇

    在上一篇了解完网络通信的基本概念之后,本章节为了解Tomcat的基本逻辑方便以后对 UDP:(发短信,不管是否能接受成功都会发送) //发送端 //不需要连接服务器 public static voi ...

  9. 多校A层冲刺NOIP2024模拟赛04

    T1.02表示法 竟然有出题人敢出高精度(其实只是一个把string转成01串),开场看出记搜后十分犹豫到底要不要写高精,徘徊很久还是写了个小高精. 码( /* GGrun */ #include&l ...

  10. 一次生产 KubeSphere 日志无法正常采集事件解决记录

    作者:宇轩辞白,运维研发工程师,目前专注于云原生.Kubernetes.容器.Linux.运维自动化等领域. 前言 2023 年 11 月 7 号下午,研发同事反馈,项目线上日志平台某个服务无法查看近 ...