【蓝桥杯集训·每日一题2025】 AcWing 6118. 蛋糕游戏 python

6118. 蛋糕游戏

Week 1
2月19日

贝茜和埃尔茜发现了一行 N N N 个蛋糕( N N N 为偶数),大小依次为 a 1 , a 2 , ... , a N a_1,a_2,...,a_N a1,a2,...,aN。

两头奶牛都想吃到尽可能多的蛋糕。

但是,作为非常文明的奶牛,她们决定玩一个游戏来分割蛋糕!

游戏在两头奶牛之间轮流进行回合。

每个回合进行以下两者之一:

  1. 贝茜选择两个相邻的蛋糕并将它们堆叠起来,制造大小为两者大小之和的一个新蛋糕。
  2. 埃尔茜选择最左边或最右边的蛋糕藏起来。

当只剩下一个蛋糕时,贝茜吃掉它,而埃尔茜吃掉她藏起来的所有蛋糕。

如果两头奶牛都采取最优策略以最大化她们吃到的蛋糕量,并且贝茜先进行回合,那么每头奶牛将会吃到多少蛋糕?

输入格式

每个测试点包含 T T T 个独立的测试用例。

每个测试用例的格式如下。

第一行包含 N N N。

下一行包含 N N N 个空格分隔的整数 a 1 , a 2 , ... , a N a_1,a_2,...,a_N a1,a2,...,aN。

输出格式

对于每个测试用例,输出一行,包含 b b b 和 e e e,表示贝茜和埃尔茜在两头奶牛都采取最优策略的情况下分别吃到的蛋糕量。

数据范围

1 ≤ T ≤ 10 1 \le T \le 10 1≤T≤10,
2 ≤ N ≤ 5 × 1 0 5 2 \le N \le 5 \times 10^5 2≤N≤5×105,
1 ≤ a i ≤ 1 0 9 1 \le a_i \le 10^9 1≤ai≤109,

输入保证一个测试点中的所有 N N N 之和不超过 1 0 6 10^6 106。

输入样例:
复制代码
2
4
40 30 20 10
4
10 20 30 40
输出样例:
复制代码
60 40
60 40
样例解释

对于第一个测试用例,在最优策略下,

  1. 贝茜将堆叠中间两个蛋糕。现在蛋糕的大小为 [ 40 , 50 , 10 ] [40,50,10] [40,50,10]。
  2. 埃尔茜将吃掉最左边的蛋糕。现在剩余的蛋糕的大小为 [ 50 , 10 ] [50,10] [50,10]。
  3. 贝茜堆叠剩余的两个蛋糕。

贝茜将吃到 30 + 20 + 10 = 60 30+20+10=60 30+20+10=60 的蛋糕,而埃尔茜将吃到 40 40 40 的蛋糕。

第二个测试用例是第一个测试用例反转的情况,因此答案相同。


思路:

贪心 + 前缀和

【算法】 一维前缀和 python

code:

python 复制代码
t = int(input())
for _ in range(t):
    n = int(input())
    a = list(map(int, input().split()))
    pre_sum = [0] * (n + 1)
    for i in range(1, n + 1):
        pre_sum[i] = pre_sum[i - 1] + a[i - 1]

    ans = float('inf')
    len = n // 2 + 1
    for i in range(len, n + 1):
        ans = min(ans, pre_sum[i] - pre_sum[i - len])

    print(ans, sum(a) - ans)

END
如果有更多问题或需要进一步的帮助,可以在评论区留言讨论哦!
如果喜欢的话,请给博主点个关注 谢谢

相关推荐
木子.李3471 小时前
排序算法总结(C++)
c++·算法·排序算法
风逸hhh1 小时前
python打卡day46@浙大疏锦行
开发语言·python
火兮明兮2 小时前
Python训练第四十三天
开发语言·python
闪电麦坤952 小时前
数据结构:递归的种类(Types of Recursion)
数据结构·算法
互联网杂货铺3 小时前
完美搭建appium自动化环境
自动化测试·软件测试·python·测试工具·职场和发展·appium·测试用例
Gyoku Mint3 小时前
机器学习×第二卷:概念下篇——她不再只是模仿,而是开始决定怎么靠近你
人工智能·python·算法·机器学习·pandas·ai编程·matplotlib
纪元A梦3 小时前
分布式拜占庭容错算法——PBFT算法深度解析
java·分布式·算法
莱茵菜苗3 小时前
Python打卡训练营day46——2025.06.06
开发语言·python
爱学习的小道长3 小时前
Python 构建法律DeepSeek RAG
开发语言·python
px不是xp3 小时前
山东大学算法设计与分析复习笔记
笔记·算法·贪心算法·动态规划·图搜索算法