AT_abc404_e.[ABC404E] Bowls and Beans
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
你有 N 个茶碗,它们排成一排,从左往右依次编号 0,1,⋯,N−1。
对于 1 号碗和它右边的碗,i 号碗上面写有一个数字 Ci,里面装有 Ai 颗豆子;0 号碗上面没有数字,碗里没有豆子。
你将执行以下操作若干次:
- 选择一个带有数字的、装有豆子的碗 i,拿走其中的一部分豆子(可以全拿);
- 将你拿出的豆子任意放入 i−Ci,i−Ci+1,⋯,i−1 号碗中,你放入的豆子数总和要等于你从 i 号碗中拿出的豆子数。
请你求出让所有豆子都被放入 0 号碗的最小操作次数。
输入格式
第一行一个整数 N(1≤N≤2000)。
第二行 N−1 个整数 C1,C2,⋯,CN−1(1≤Ci≤i)。
第三行 N−1 个整数 A1,A2,⋯,AN−1(0≤Ai≤1)。
保证 i=1∑N−1Ai>0,即不会出现所有碗里都没有豆子的情况。
输出格式
输出一个整数表示答案。
输入输出样例
输入#1
5 1 1 2 1 1 0 0 1
输出#1
3
输入#2
6 1 2 1 3 1 1 1 0 1 1
输出#2
4
输入#3
16 1 1 1 2 5 1 1 3 4 1 4 3 1 1 2 1 0 0 0 1 0 0 1 1 0 0 0 0 0 1
输出#3
7
说明/提示
样例 1 解释
以下是一种可能的操作序列:
- 从 4 号碗里拿出 1 颗豆子,将其放入 3 号碗;
- 从 3 号碗里拿出 1 颗豆子,将其放入 1 号碗;
- 从 1 号碗里拿出 2 颗豆子,将其放入 0 号碗。
花费 3 次操作完成了题目的要求。可以证明这是可能的最小操作次数。
样例 2 解释
以下是一种可能的操作序列:
- 从 5 号碗里拿出 1 颗豆子,将其放入 4 号碗;
- 从 4 号碗里拿出 2 颗豆子,1 颗放入 1 号碗,1 颗放入 2 号碗;
- 从 1 号碗里拿出 2 颗豆子,将其放入 0 号碗;
- 从 2 号碗里拿出 2 颗豆子,将其放入 0 号碗。
花费 4 次操作完成了题目的要求。可以证明这是可能的最小操作次数。
By chenxi2009
输入解题思路,AI测评打分。不知道怎么写?