再学一道算法题: 最大子列和问题

简介: 再学一道算法题: 最大子列和问题

image.png
本题旨在测试各种不同的算法在各种数据情况下的表现。各组测试数据特点如下:

数据1:与样例等价,测试基本正确性;
数据2:102个随机整数;
数据3:103个随机整数;
数据4:104个随机整数;
数据5:105个随机整数;
输入格式:
输入第1行给出正整数K (≤100000);第2行给出K个整数,其间以空格分隔。

输出格式:
在一行中输出最大子列和。如果序列中所有整数皆为负数,则输出0。

输入样例:
6
-2 11 -4 13 -5 -2
输出样例:
20

using namespace std;

int a[100005];
int main()
{
    int n;
    scanf("%d",&n);
    
    for(int i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
    }
    
    int sum=0,maxsum=0;
    
    for(int i=0;i<n;i++)
    {
        sum+=a[i];//依次向右累加
        
        if(sum>maxsum)
            maxsum=sum;//更新最大值
        else if(sum<0)
            sum=0;//如果当前和为负数,那么后面的和会减小,所以需要新的起点。
    }
    printf("%d\n",maxsum);
    return 0;
}
相关文章
再学一道算法题: 九宫格输入法
再学一道算法题: 九宫格输入法
再学一道算法题: 两个有序序列的中位数
再学一道算法题: 两个有序序列的中位数
再学一道算法题: 两个有序序列的中位数
再学一道算法题: 二分法求多项式单根
再学一道算法题: 二分法求多项式单根
再学一道算法题: 二分法求多项式单根
再学一道算法题: 食物链(带权并查集)
再学一道算法题: 食物链(带权并查集)
再学一道算法题: 食物链(带权并查集)
|
存储 算法
再学一道算法题:PAT排名汇总 (排序+存储)
再学一道算法题:PAT排名汇总 (排序+存储)
再学一道算法题: 寻找大富翁
再学一道算法题: 寻找大富翁
|
存储 算法
再学一道算法题: 最长连续递增子序列
再学一道算法题: 最长连续递增子序列
再学一道算法题: 朋友(map)
再学一道算法题: 朋友(map)
|
人工智能 监控 算法
再学一道算法题:监控
再学一道算法题:监控
|
6天前
|
算法 数据安全/隐私保护
室内障碍物射线追踪算法matlab模拟仿真
### 简介 本项目展示了室内障碍物射线追踪算法在无线通信中的应用。通过Matlab 2022a实现,包含完整程序运行效果(无水印),支持增加发射点和室内墙壁设置。核心代码配有详细中文注释及操作视频。该算法基于几何光学原理,模拟信号在复杂室内环境中的传播路径与强度,涵盖场景建模、射线发射、传播及接收点场强计算等步骤,为无线网络规划提供重要依据。