题目名称 2553. 增减序列
输入输出 IncDec.in/out
难度等级 ★★☆
时间限制 1000 ms (1 s)
内存限制 64 MiB
测试数据 10
题目来源 GravatarLGLJ 于2019-10-17加入
开放分组 全部用户
提交状态
分类标签
贪心 差分
分享题解
通过:56, 提交:154, 通过率:36.36%
GravatarLGLJ 100 0.000 s 1.44 MiB C++
Gravatar 100 0.013 s 4.36 MiB C++
Gravatarムラサメ 100 0.049 s 6.65 MiB C++
Gravatar瑆の時間~無盡輪迴·林蔭 100 0.054 s 15.18 MiB C++
Gravatarguoyangtuo 100 0.058 s 6.38 MiB C++
Gravatar增强型图元文件 100 0.058 s 14.42 MiB C++
Gravatarムラサメ 100 0.059 s 6.65 MiB C++
Gravatarzxhhh 100 0.065 s 6.50 MiB C++
Gravatar梦那边的美好ET 100 0.066 s 2.95 MiB C++
Gravatar锝镆氪锂铽 100 0.071 s 13.66 MiB C++
关于 增减序列 的近10条评论(全部评论)
前排提示要开long long
Gravatar云卷云书
2019-10-22 11:39 1楼

2553. 增减序列

★★☆   输入文件:IncDec.in   输出文件:IncDec.out   简单对比
时间限制:1 s   内存限制:64 MiB

【题目描述】

给定一个长度为 $n(1\leq n\leq 10^5)$ 的数列 $a_1,a_2,\cdots,a_n$,每次可以选择一个区间 $[l,r]$,使下标在这个区间内的数都加一或者都减一。

求至少需要多少次操作才能使数列中的所有数都一样,并求出在保证最少次数的前提下,最终得到的数列可能有多少种。

【输入格式】

第一行输入正整数$n$。

接下来$n$行,每行输入一个整数,第$i+1$行的整数代表$a_i$。

【输出格式】

第一行输出最少操作次数。

第二行输出最终能得到多少种结果。

【样例输入】

4
1
1
2
2

【样例输出】

1
2

【来源】

《算法竞赛进阶指南》