蓝桥杯训练——最大连续子系列和
来源:互联网 发布:python return{} 编辑:程序博客网 时间:2024/06/08 10:48
问题描述:
实例1.1 最大子列和问题(20 分)
给定K个整数组成的序列{ N
1
, N
2
, ..., N
K
},“连续子列”被定义为{ N
i
, N
i+1
, ..., N
j
},其中 1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序列{ -2, 11, -4, 13, -5, -2 },其连续子列{ 11, -4, 13 }有最大的和20。现要求你编写程序,计算给定整数序列的最大子列和。
本题旨在测试各种不同的算法在各种数据情况下的表现。各组测试数据特点如下:
数据1:与样例等价,测试基本正确性;
数据2:102个随机整数;
数据3:103个随机整数;
数据4:104个随机整数;
数据5:105个随机整数;
输入格式:
输入第1行给出正整数K (≤100000);第2行给出K个整数,其间以空格分隔。
输出格式:
在一行中输出最大子列和。如果序列中所有整数皆为负数,则输出0。
输入样例:
6
-2 11 -4 13 -5 -2
输出样例:
20
实例1.1 最大子列和问题(20 分)
给定K个整数组成的序列{ N
1
, N
2
, ..., N
K
},“连续子列”被定义为{ N
i
, N
i+1
, ..., N
j
},其中 1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序列{ -2, 11, -4, 13, -5, -2 },其连续子列{ 11, -4, 13 }有最大的和20。现要求你编写程序,计算给定整数序列的最大子列和。
本题旨在测试各种不同的算法在各种数据情况下的表现。各组测试数据特点如下:
数据1:与样例等价,测试基本正确性;
数据2:102个随机整数;
数据3:103个随机整数;
数据4:104个随机整数;
数据5:105个随机整数;
输入格式:
输入第1行给出正整数K (≤100000);第2行给出K个整数,其间以空格分隔。
输出格式:
在一行中输出最大子列和。如果序列中所有整数皆为负数,则输出0。
输入样例:
6
-2 11 -4 13 -5 -2
输出样例:
20
来源:网上代码,修改
代码:
/*问题描述:实例1.1 最大子列和问题(20 分)给定K个整数组成的序列{ N1 , N2 , ..., NK },“连续子列”被定义为{ Ni , Ni+1 , ..., Nj },其中 1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序列{ -2, 11, -4, 13, -5, -2 },其连续子列{ 11, -4, 13 }有最大的和20。现要求你编写程序,计算给定整数序列的最大子列和。本题旨在测试各种不同的算法在各种数据情况下的表现。各组测试数据特点如下:数据1:与样例等价,测试基本正确性;数据2:102个随机整数;数据3:103个随机整数;数据4:104个随机整数;数据5:105个随机整数;输入格式:输入第1行给出正整数K (≤100000);第2行给出K个整数,其间以空格分隔。输出格式:在一行中输出最大子列和。如果序列中所有整数皆为负数,则输出0。输入样例:6-2 11 -4 13 -5 -2输出样例:20来源:网上代码,修改*/#include <stdio.h>#define MAXN 100001int main(){ int k, a[MAXN]; long long thisSum = 0, maxSum = 0; scanf("%d", &k); int i; for(i = 0; i < k; ++i) scanf("%d", &a[i]); for(i = 0; i < k; ++i) { thisSum += a[i]; if(thisSum > maxSum) maxSum = thisSum; else if(thisSum < 0) thisSum = 0; } printf("%lld\n", maxSum); return 0;}
知识点总结:...
学习心得:这是个很精妙的算法,只用了一层循环
阅读全文
0 0
- 蓝桥杯训练——最大连续子系列和
- 数据结构面试题总结7——数组:最大连续子段和、最大连续子段积
- HDU 1231 最大连续子序列——最大连续和+输出其起始点
- 【DP经典系列】最大连续子序列和
- 【剑指offer系列】 连续子数组的最大和___31
- 动态规划——最大连续子段和
- 动态规划——最大连续子段和
- 最大连续子序列和——动态规划
- 《剑指offer》——连续子数组的最大和
- hdu(5586)——Sum(最大连续子段和)
- 经典算法——连续子数组最大和问题
- 动态规划——连续子序列最大和
- 剑指offer——连续子数组的最大和
- 剑指offer31——连续子数组的最大和
- 剑指Offer——连续子数组的最大和
- 剑指offer——连续子数组的最大和
- 第四章——最大连续子数组的和
- 剑指offer——连续子数组的最大和
- Java中集合(三)Stack
- 一些防止java代码被反编译的方法
- 第四周项目五猴子选大王
- 融云头像昵称设置
- 设计模式——工厂模式(java)
- 蓝桥杯训练——最大连续子系列和
- Selenium之鼠标和键盘操作及扩展
- Codeforces 638C Road Improvement【思维+Dfs】
- OO’s Sequence
- javaSE_8系列博客——重要的基础Java类——Exceptions(异常处理机制)--4--总结
- Android开发之Hybrid开发
- spring集成kafka实现producer和consumer
- js原型的通俗理解
- 利用Powershell每天自动设置提取Win10的windows聚焦图片(Spotlight)作为桌面壁纸的方法