(题目) (思维+栈)扶桑号战列舰
时间限制: 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;
}
(题目) (思维+栈)扶桑号战列舰相关推荐
- 【单调栈】 扶桑号战列舰
问题 N: 扶桑号战列舰 时间限制: 1 Sec 内存限制: 128 MB Special Judge 提交: 330 解决: 129 [提交] [状态] [命题人:admin] 题目描述 众所 ...
- 扶桑号战列舰(单调栈)
问题 N: 扶桑号战列舰 时间限制: 1 Sec 内存限制: 128 MB Special Judge 题目描述 众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据&quo ...
- 扶桑号战列舰【单调栈+线段树】
扶桑号战列舰 传送门 来源upc:12800 题目描述 众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据"个舰优越主义",建造了扶桑级战列舰,完工时为当 ...
- 扶桑号战列舰 (单调栈+线段树区间更新懒惰标记 or 栈)
传送门 •题目描述 题目描述 众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据"个舰优越主义",建造了扶桑级战列舰,完工时为当时世界上武装最为强大的舰只. ...
- 个人训练赛第十八场----问题 N: 扶桑号战列舰(贪心+栈)
黑色的飞鸟掠过天空,我站在城中,看时间燃成灰烬,哗哗作响...... 题目描述 众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据"个舰优越主义",建造了扶 ...
- 扶桑号战列舰(差分/笛卡尔树)
问题 N: 扶桑号战列舰 时间限制: 1 Sec 内存限制: 128 MB Special Judge ...
- 【upc】扶桑号战列舰 | 笛卡尔树 、 差分数组
题目描述 众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据"个舰优越主义",建造了扶桑级战列舰,完工时为当时世界上武装最为强大的舰只. 同时,扶桑号战列舰 ...
- 问题 N: 扶桑号战列舰(笛卡尔树or差分数组)
问题 N: 扶桑号战列舰 时间限制: 1 Sec 内存限制: 128 MB Special Judge 提交: 169 解决: 52 [提交] [状态] [命题人:admin] 题目描述 众所周 ...
- 扶桑号战列舰【RMQ+分治】
扶桑号战列舰 时间限制: 1 Sec 内存限制: 128 MB Special Judge 提交: 197 解决: 63 [提交] [状态] [命题人:admin] 题目描述 众所周知,一战过后,在世 ...
最新文章
- Entity Framework 的小实例:在项目中添加一个实体类,并做插入操作
- FreeNOS的启动
- did双重差分法_Stata中双重差分操流程及代码
- Nginx+tomcat+memcached缓存共享session
- java反射怎么获取结构体_java反射-使用反射获取类的所有信息
- qt程序部署在linux,Qt应用打包发布,部署真正的Qt程序LinuxWindows-Go语言中文社区...
- log4j配置时的位置问题
- 查看mysql字符集参数_查看现阶段mysql字符集的参数
- 大龄屌丝自学笔记--Java零基础到菜鸟--006
- 5.2刚买了佳能的ixus100is数码相机,可以录像不过是mov格式的,需要转换为dvd的软件...
- 10年经验17张图带你进入gitflow企业项目代码版本管理的最佳实践
- ubuntu命令行安装teamview
- python变量定义模糊_python基础-1(网络瓶颈效应,执行python两种方式,变量,常量,python变量内存管理,变量的三个特征,花式赋值,注释 )...
- 用计算机演奏森林时光,森林时光-xpaper全媒体电子报刊系统
- U盘、移动硬盘;固态硬盘、机械硬盘
- 尚硅谷--Linux篇
- CentOS镜像介绍及下载
- 雷电html代码,基于HTML5的游戏制作(雷电飞机设计游戏)
- 计算机系统集成要开增值税税率,关于调整增值税税率的通知 2018年5月1日起执行...
- 国科大学习资料--模式识别与机器学习-2016期末考试题