F. 两端取币(twins2)

    传统题 1000ms 256MiB

两端取币(twins2)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

两端取币(twins2)

题目描述

YY 同学有 nn 枚硬币,它们从左到右排成一行,第 ii 枚硬币的面值为 aia_i

现在,YY 同学想从这些硬币中取出尽可能少的若干枚,使得被取出的硬币面值总和严格大于剩余所有硬币的面值总和。

但取硬币的方式受到限制:每次操作中,YY 同学只能取走当前最左端或当前最右端的一枚硬币。

你需要求出,在最优选择下,最少需要取走多少枚硬币,才能满足要求。

输入格式

第一行包含一个整数 nn,表示硬币的数量。

第二行包含 nn 个整数 a1,a2,,ana_1,a_2,\dots,a_n,表示每枚硬币的面值。

输出格式

输出一个整数,表示最少需要取走的硬币数量。

样例

样例输入 #1

4
4 1 2 10

样例输出 #1

1

样例输入 #2

4
1 100 100 1

样例输出 #2

3

数据范围与约定

对于 100100% 的数据,保证 1n2×1051 \le n \le 2 \times 10^51ai1091 \le a_i \le 10^9

测试点编号 分值 nn \le aia_i \le 特殊性质
141 \sim 4 2020 2020
585 \sim 8 10310^3 10510^5 AA
9129 \sim 12 2×1052 \times 10^5 10910^9 BB
131613 \sim 16 CC
172017 \sim 20

特殊性质 AA:保证序列单调不降,即对所有 1i<n1 \le i < n,均有 aiai+1a_i \le a_{i+1}

特殊性质 BB:保证序列单调不增,即对所有 1i<n1 \le i < n,均有 aiai+1a_i \ge a_{i+1}

特殊性质 CC:保证所有硬币面值均相同。

CSP-J模拟练习8

未参加
状态
已结束
规则
IOI
题目
6
开始于
2026-7-27 7:30
结束于
2026-8-4 15:30
持续时间
200 小时
主持人
参赛人数
11