5812. 【NOIP提高A组模拟2018.8.14】 区间
(File IO): input:range.in output:range.out
Time Limits: 1000 ms Memory Limits: 262144 KB Detailed Limits Special Judge
Downloads
Goto ProblemSet
Description
每一个机房中总有一个红太阳。有一天,AmberFrame 来到机房,发现桌上有不知道哪个蒟蒻放上的问 题: 有一个 n 个数的序列,一开始所有的数都是 0,每次可以将一个区间 [l, r](l ≤ r) 内的数 +1,求到达最 终状态的最少操作次数。 AmberFrame 非常强,自然不会把时间花在这种水题上。因此他就把任务交给了你,如果不会做的话,他 可能就会觉得你就是那个放问题的蒟蒻了而把你批判一番了。
Input
第一行包含一个正整数 n,表示序列的长度。
第二行包含 n 个非负整数 a1, a2, ..., an,表示最终的状态。
Output
输出的第一行是一个正整数 m,表示最少的操作次数。 接下来 m 行每行两个正整数 li , ri,表示一次操作。你需要保证 1 ≤ li ≤ ri ≤ n。 保证最少次数 m ≤ 10^5,输出可以以任意顺序输出。
Data Constraint
aaarticlea/jpeg;base64,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" alt=" " />
Hint
下发样例中第 i 个样例与第 i 组数据范围相符。
对于样例 1,第一个数被加了两次,其他每个数都被加了三次,显然满足条件。
做法:一开始还想用线段树来着,后来发现会超时,题解上说打差分从头到尾扫一遍就好啦
代码如下:
#include <cstdio>
#include <cstring>
#include <iostream>
#define N 100007
using namespace std;
int n, a[N], list[N], tot, ans;
int abs (int x) { return x > ? x : -x; }
void Work(int step, int Times)
{
for (; Times--; list[++tot] = step);
}
void Print(int step, int Times)
{
for(; Times--; printf("%d %d\n", list[tot--], step));
}
int main()
{
freopen("range.in", "r", stdin);
freopen("range.out", "w", stdout);
scanf("%d", &n);
for (int i = ; i <= n; scanf("%d", &a[i++]));
for (int i = ; i <= n; i++)
if (a[i] > a[i - ]) ans += a[i] - a[i - ];
printf("%d\n", ans);
for (int i = ; i <= n + ; i++)
{
if (a[i] > a[i - ]) Work(i, abs(a[i] - a[i - ]));
if (a[i] < a[i - ]) Print(i - , abs(a[i] - a[i - ]));
}
}
- 【NOIP提高A组模拟2018.8.14】 区间
区间加:差分数组修改 O(n)扫描,负数位置单调不减 #include<iostream> #include<cstring> #include<cstdio> # ...
- JZOJ 5818. 【NOIP提高A组模拟2018.8.15】 做运动
5818. [NOIP提高A组模拟2018.8.15] 做运动 (File IO): input:running.in output:running.out Time Limits: 2000 ms ...
- 5820. 【NOIP提高A组模拟2018.8.16】 非法输入(模拟,字符串)
5820. [NOIP提高A组模拟2018.8.16] 非法输入 (File IO): input:aplusb.in output:aplusb.out Time Limits: 1000 ms ...
- [jzoj 5782]【NOIP提高A组模拟2018.8.8】 城市猎人 (并查集按秩合并+复杂度分析)
传送门 Description 有n个城市,标号为1到n,修建道路花费m天,第i天时,若gcd(a,b)=m-i+1,则标号为a的城市和标号为b的城市会建好一条直接相连的道路,有多次询问,每次询问某两 ...
- [jzoj 5781]【NOIP提高A组模拟2018.8.8】秘密通道 (最短路)
传送门 Description 有一副nm的地图,有nm块地,每块是下列四种中的一种: 墙:用#表示,墙有4个面,分别是前面,后面,左面,右面. 起点:用C表示,为主角的起点,是一片空地. 终点:用F ...
- [jzoj 5778]【NOIP提高A组模拟2018.8.8】没有硝烟的战争 (博弈论+dp)
传送门 Description 被污染的灰灰草原上有羊和狼.有N只动物围成一圈,每只动物是羊或狼. 该游戏从其中的一只动物开始,报出[1,K]区间的整数,若上一只动物报出的数是x,下一只动物可以报[x ...
- [JZOJ5817] 【NOIP提高A组模拟2018.8.15】 抄代码
Description J 君是机房的红太阳,每次模拟她总是 AK 虐场.然而在 NOIP2117 中,居然出现了另一位 AK 的选手 C 君! 这引起了组委会的怀疑,组委会认为 C 君有抄袭 J 君 ...
- [JZOJ5818] 【NOIP提高A组模拟2018.8.15】 做运动
Description 一天,Y 君在测量体重的时候惊讶的发现,由于常年坐在电脑前认真学习,她的体重有了突 飞猛进的增长. 幸好 Y 君现在退役了,她有大量的时间来做运动,她决定每天从教学楼跑到食堂来 ...
- [JZOJ5781]【NOIP提高A组模拟2018.8.8】秘密通道
Description 有一副n*m的地图,有n*m块地,每块是下列四种中的一种:墙:用#表示,墙有4个面,分别是前面,后面,左面,右面.起点:用C表示,为主角的起点,是一片空地.终点:用F表示,为主 ...
随机推荐
- IDEA右键新建时没有Java Class选项
今天在IDEA中新建了一个maven工程,但是在我想要新建Class时发件右键菜单里竟然没有Java Class选项!如下图所示: 如上图红圈所示,我们可以根据对项目的任意目录进行这五种目录类型标注, ...
- pygame 使用
模块概况 display image event key mouse font 类概况 Rect: 返回的矩阵区域(图片) Surface: 可以看做是一个贴图, 它就是来显示的 display(与显 ...
- 整理:sql server 中sql语句执行顺序
SQL Server 查询处理中的各个阶段(SQL执行顺序) SQL 不同于与其他编程语言的最明显特征是处理代码的顺序.在大数编程语言中,代码按编码顺序被处理,但是在SQL语言中,第一个被处理的子句是 ...
- vscode 插件todo-highlight
简介 Highlight TODO,FIXME or any annotations within your code. 资源 https://marketplace.visualstudio.com ...
- 北航oo作业第四单元小结
1.总结本单元两次作业的架构设计 在我动手开始总结我的设计之前,我看了其他同学已经提交在班级群里的博客,不禁汗颜,我是真的偷懒.其他同学大多使用了新建一个类,用以储存每一个UMLelemet元素的具体 ...
- Mavlink协议理解
来源:blog.csdn.net/super_mice/article/details/44836585 之前看了mavlink协议,网上关于mavlink的资料不多.本文大概总结了下对mavlink ...
- JS浏览器获取宽高
screen.availHeight is the height the browser's window can have if it is maximized. (including all th ...
- arcgis api for js 地图查询
arcgis api for js入门开发系列四地图查询(含源代码) 上一篇实现了demo的地图工具栏,本篇新增地图查询功能,包括属性查询和空间查询两大块,截图如下: 属性查询效果图: 空间查询效 ...
- 五、c++实现离散傅里叶变换
C++离散傅里叶变换 一.序言: 该教程基于之前的图像处理类MYCV,是对其的补充. 二.设计目标 对图像进行简单的离散傅里叶变换,并输出生成的频谱图. 三.需要提前掌握的知识 二维傅里叶变换公式: ...
- 美国L-1A签证简介
一. L-1A签证是美国非移民签证种类之一,主要发给外国跨国公司在美所设公司的高层管理人员.申请程序是先经美国移民局批准,美驻外使领馆凭移民局的批准函(I-797表)核发签证.移民局的批准函并不意味着 ...