AT_bcu30_2019_b.Interval Addition
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
ミクシィ公司的青木先生有一个由 N 个元素组成的数列 A,初始时数列的所有元素均为 0。
青木先生可以重复进行以下操作 0 次或多次,使得对于所有 1≤i≤N,数列第 i 个元素变为 ai。
- 选择满足 1≤k≤N 和 1≤l≤N+1−k 的正整数 k,l。任意选择一个长度为 k 的非负整数序列 0≤B1≤B2≤⋯≤Bk,然后对于 1≤i≤k,令 Al+i−1:=Al+i−1+Bi。
每次操作可以选择不同的 k,l,B。请你求出青木先生为了得到目标数列,所需的最少操作次数。
输入格式
输入以如下格式从标准输入读入。
N a1 a2 ⋯ aN
输出格式
输出青木先生为了得到目标数列所需的最小操作次数。
输入输出样例
输入#1
2 3 4
输出#1
1
输入#2
2 4 3
输出#2
2
输入#3
4 4 0 4 0
输出#3
2
说明/提示
限制条件
- 1≤N≤2×105
- 0≤ai≤109
- 输入均为整数
样例解释 1
如果选择 k=2,l=1,B={3,4},青木先生可以通过 1 次操作得到目标数列。
样例解释 2
第一次操作选择 k=2,l=1,B={3,3},此时 A 变为 {3,3}。第二次操作选择 k=1,l=1,B={1},此时 A 变为 {4,3}。因此青木先生可以通过 2 次操作得到目标数列,且无法通过 1 次或更少的操作得到目标数列,所以输出 2。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?