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

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

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)
再学一道算法题: 两个有序序列的中位数
再学一道算法题: 两个有序序列的中位数
再学一道算法题: 两个有序序列的中位数
再学一道算法题: 二分法求多项式单根
再学一道算法题: 二分法求多项式单根
再学一道算法题: 二分法求多项式单根
再学一道算法题: 食物链(带权并查集)
再学一道算法题: 食物链(带权并查集)
再学一道算法题: 食物链(带权并查集)
|
人工智能 监控 算法
再学一道算法题:监控
再学一道算法题:监控
|
30天前
|
传感器 算法 计算机视觉
基于肤色模型和中值滤波的手部检测算法FPGA实现,包括tb测试文件和MATLAB辅助验证
该内容是关于一个基于肤色模型和中值滤波的手部检测算法的描述,包括算法的运行效果图和所使用的软件版本(matlab2022a, vivado2019.2)。算法分为肤色分割和中值滤波两步,其中肤色模型在YCbCr色彩空间定义,中值滤波用于去除噪声。提供了一段核心程序代码,用于处理图像数据并在FPGA上实现。最终,检测结果输出到&quot;hand.txt&quot;文件。

热门文章

最新文章