时间限制: 1 Sec 内存限制: 128 MB

题目描述
众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据“个舰优越主义”,建造了扶桑级战列舰,完工时为当时世界上武装最为强大的舰只。
同时,扶桑号战列舰也是舰岛最为科幻的战列舰。
当然,要建造这样的舰船,科技水平是必须的。
同样众所周知的是,德意志科学技术天下第一,所以IJN的司令官从德国学来了一种先进的建船方法。
一只战舰横过来可以看做一个长度为n的序列,每个位置有一个数ai表示这个位置设计的高度。这种先进的造船技术可以每次将一个区间[l,r]内的所有位置高度都+1,求到达最终设计状态的最少操作次数。
如果你不能及时完成的话,IJN司令官会奖励你去参加苏里高海战。

输入
第一行包含一个整数n,表示序列的长度。
第二行包含n个非负整数a1,a2,a3,…,an,表示最终的状态。

输出
输出的第一行是一个正整数m,表示最少的操作次数。
接下来m行每行两个正整数li,ri,表示一次操作。
你需要保证1≤li≤ri≤n。
保证最少次数m≤105,输出可以以任意顺序输出。

样例输入
6
2 3 3 3 3 3

样例输出
3
1 6
1 6
2 6

#include <bits/stdc++.h>
using namespace std;
const int maxn=1e5+5;
int H[maxn];
int main()
{stack<int> S;int n;int m=0;scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d",&H[i]);if(H[i]>H[i-1])m+=H[i]-H[i-1];}printf("%d\n",m);for(int i=1;i<=n;i++){if(H[i]>H[i-1]){for(int j=H[i-1];j<H[i];j++){S.push(i);}}if(H[i]>H[i+1]){for(int j=H[i+1];j<H[i];j++){printf("%d %d\n",S.top(),i);S.pop();}}}return 0;
}

(题目) (思维+栈)扶桑号战列舰相关推荐

  1. 【单调栈】 扶桑号战列舰

    问题 N: 扶桑号战列舰 时间限制: 1 Sec  内存限制: 128 MB  Special Judge 提交: 330  解决: 129 [提交] [状态] [命题人:admin] 题目描述 众所 ...

  2. 扶桑号战列舰(单调栈)

    问题 N: 扶桑号战列舰 时间限制: 1 Sec  内存限制: 128 MB  Special Judge 题目描述 众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据&quo ...

  3. 扶桑号战列舰【单调栈+线段树】

    扶桑号战列舰 传送门  来源upc:12800 题目描述 众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据"个舰优越主义",建造了扶桑级战列舰,完工时为当 ...

  4. 扶桑号战列舰 (单调栈+线段树区间更新懒惰标记 or 栈)

    传送门 •题目描述 题目描述 众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据"个舰优越主义",建造了扶桑级战列舰,完工时为当时世界上武装最为强大的舰只. ...

  5. 个人训练赛第十八场----问题 N: 扶桑号战列舰(贪心+栈)

    黑色的飞鸟掠过天空,我站在城中,看时间燃成灰烬,哗哗作响...... 题目描述 众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据"个舰优越主义",建造了扶 ...

  6. 扶桑号战列舰(差分/笛卡尔树)

    问题 N: 扶桑号战列舰 时间限制: 1 Sec  内存限制: 128 MB  Special Judge                                               ...

  7. 【upc】扶桑号战列舰 | 笛卡尔树 、 差分数组

    题目描述 众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据"个舰优越主义",建造了扶桑级战列舰,完工时为当时世界上武装最为强大的舰只. 同时,扶桑号战列舰 ...

  8. 问题 N: 扶桑号战列舰(笛卡尔树or差分数组)

    问题 N: 扶桑号战列舰 时间限制: 1 Sec  内存限制: 128 MB  Special Judge 提交: 169  解决: 52 [提交] [状态] [命题人:admin] 题目描述 众所周 ...

  9. 扶桑号战列舰【RMQ+分治】

    扶桑号战列舰 时间限制: 1 Sec 内存限制: 128 MB Special Judge 提交: 197 解决: 63 [提交] [状态] [命题人:admin] 题目描述 众所周知,一战过后,在世 ...

最新文章

  1. Entity Framework 的小实例:在项目中添加一个实体类,并做插入操作
  2. FreeNOS的启动
  3. did双重差分法_Stata中双重差分操流程及代码
  4. Nginx+tomcat+memcached缓存共享session
  5. java反射怎么获取结构体_java反射-使用反射获取类的所有信息
  6. qt程序部署在linux,Qt应用打包发布,部署真正的Qt程序LinuxWindows-Go语言中文社区...
  7. log4j配置时的位置问题
  8. 查看mysql字符集参数_查看现阶段mysql字符集的参数
  9. 大龄屌丝自学笔记--Java零基础到菜鸟--006
  10. 5.2刚买了佳能的ixus100is数码相机,可以录像不过是mov格式的,需要转换为dvd的软件...
  11. 10年经验17张图带你进入gitflow企业项目代码版本管理的最佳实践
  12. ubuntu命令行安装teamview
  13. python变量定义模糊_python基础-1(网络瓶颈效应,执行python两种方式,变量,常量,python变量内存管理,变量的三个特征,花式赋值,注释 )...
  14. 用计算机演奏森林时光,森林时光-xpaper全媒体电子报刊系统
  15. U盘、移动硬盘;固态硬盘、机械硬盘
  16. 尚硅谷--Linux篇
  17. CentOS镜像介绍及下载
  18. 雷电html代码,基于HTML5的游戏制作(雷电飞机设计游戏)
  19. 计算机系统集成要开增值税税率,关于调整增值税税率的通知 2018年5月1日起执行...
  20. 国科大学习资料--模式识别与机器学习-2016期末考试题

热门文章

  1. AD10自动批量修改元件名称
  2. Microsoft Windows Server 2008 Standard Edition激活码申请方法
  3. CMMI 级别中和BUG率
  4. 蝉知 7.7 正式发布,移动端全面改版!
  5. 《现代控制理论》刘豹 第一章重要知识点
  6. sae项目服务器,sae服务器 mysql数据库
  7. docker 日志级别
  8. 搭建股票量化系统步骤
  9. 没有logo不要紧,手动为你的BIOS添加开机logo[AMI]
  10. HDFS Erasure Coding