xyd的数据阴成啥了

题目

给定一个长度为 n 的整数序列,要求从中选出两个连续子序列,使得这两个连续子序列的序列和之和最大,最终只需输出最大和。一个连续子序列的和为该子序列中所有数之和。每个连续子序列的最小长度为 1,并且两个连续子序列之间至少间隔一个数。

我的代码

#include <bits/stdc++.h>
using namespace std;
long long a[1000005],l[1000005],r[1000005],n;
int main() {
    cin >> n;
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }
    long long c = a[0];
    l[0] = a[0];
    for (int i = 1; i < n; i++) {
        c = max(a[i], c + a[i]);
        l[i] = max(l[i-1], c);
    }
    c = a[n-1];
    r[n-1] = a[n-1];
    for (int i = n-2; i >= 0; i--) {
        c = max(a[i], c + a[i]);
        r[i] = max(r[i+1], c);
    }
    long long result = LLONG_MIN;
    for (int i = 0; i < n-1; i++) {
        result = max(result, l[i] + r[i+1]);
    }
    cout << result;
    return 0;
}

这代码第二个样例没过,结果提交上去AC了
这数据阴成啥了

2 个赞

帮你转到 站点反馈

@黄耀民 请联系自己的任课老师,我们这边大底是帮不上忙

3 个赞

是的呢