Acwing6118 蛋糕游戏

这是yxc大佬的题解,这道题的推导很有意思,但是结论很简单,就是用前缀和找中间一段累加最小的连续数组。唉是我一辈子做不出的题。

cpp 复制代码
#include <iostream>
#include <cstring>
#include <algorithm>

using namespace std;

typedef long long LL;
const int N = 500010;

int n;
LL s[N];

int main()
{
    int T;
    scanf("%d", &T);

    while (T -- )
    {
        scanf("%d", &n);

        LL a = 1e15;
        int l = n / 2 + 1;
        for (int i = 1; i <= n; i ++ )
        {
            int x;
            scanf("%d", &x);
            s[i] = s[i - 1] + x;
            if (i >= l) a = min(a, s[i] - s[i - l]);
        }

        printf("%lld %lld\n", a, s[n] - a);
    }

    return 0;
}
相关推荐
Zafir20244 分钟前
Qt实现TabWidget通过addTab函数添加的页,页内控件自适应窗口大小
开发语言·c++·qt·ui
阿巴~阿巴~6 分钟前
深入解析C++非类型模板参数
开发语言·c++
多吃蔬菜!!!15 分钟前
vscode 搭建C/C++开发环境搭建(linux)
linux·c语言·c++
gihigo199838 分钟前
matlab多目标优化差分进化算法
数据结构·算法
weixin_582470171 小时前
GS-IR:3D 高斯喷溅用于逆向渲染
人工智能·算法
Lin9成1 小时前
机器学习集成算法与K-means聚类
算法
JNU freshman2 小时前
算法 之 拓 扑 排 序
数据结构·算法
NAGNIP2 小时前
DeepSeek-R1 架构解析:如何通过强化学习激发大模型的推理能力?
算法
小指纹2 小时前
河南萌新联赛2025第(六)场:郑州大学
java·开发语言·数据结构·c++·算法
爱coding的橙子3 小时前
每日算法刷题Day63:8.19:leetcode 堆6道题,用时1h50min
算法·leetcode·职场和发展