P1115 最大子段和


你不在的时候我都是一个人

题目链接:P1115 最大子段和 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

解题思路:

有点动态规划的思想,判断当前序列加上当前的值是否大于当前值,如果小于,那么当前序列更新为当前值,否则为加上该值后的序列,再用一个变量来存最大字段和,比较每次的序列和ans,返回大的值,注意要把初始值设置为最小,避免数组全为负数,讲的可能有点抽象,具体看代码

下面是c++代码:

cpp 复制代码
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
    int n, ans = -10e9;
    cin >> n;
    int* arr = new int[n];
    int* brr = new int[n];
    for (int i = 0; i < n; i++) {
        cin >> arr[i];
    }
    for (int i = 0; i < n; i++) {
        if (i == 0) {
            brr[i] = arr[i];//第一项为单独序列
        }
        else {
            brr[i] = max(brr[i - 1] + arr[i], arr[i]);//比较当前序列加上当前值和当前值的大小,返回大的值
        }
        ans = max(brr[i], ans);//存放最大连续子段和
    }
    cout << ans;
    return 0;
}
相关推荐
潇冉沐晴8 分钟前
2026CCCC第三次模拟赛 部分题解
算法
WolfGang00732124 分钟前
代码随想录算法训练营 Day32 | 动态规划 part05
算法·动态规划
碧海银沙音频科技研究院1 小时前
1-1杰理蓝牙SOC的UI配置开发方法
人工智能·深度学习·算法
啊我不会诶1 小时前
2024CCPC长春邀请赛
算法
珂朵莉MM1 小时前
第七届全球校园人工智能算法精英大赛-算法巅峰赛产业命题赛第3赛季优化题--启发式算法+操作因子设计
人工智能·算法
CS创新实验室3 小时前
CS实验室行业报告:AI算法工程师就业分析报告
人工智能·算法
XiYang-DING3 小时前
【LeetCode】Hash | 136.只出现一次的数字
算法·leetcode·哈希算法
wayz113 小时前
Day 3:逻辑回归与分类预测
算法·分类·逻辑回归
tankeven3 小时前
HJ176 【模板】滑动窗口
c++·算法
网域小星球4 小时前
C 语言从 0 入门(十二)|指针与数组:数组名本质、指针遍历数组
c语言·算法·指针·数组·指针遍历数组