剑指offer-面试题42-连续子数组的最大和-动态规划
2024-09-06 21:12:50
/*
题目;
输入一个整形数组(可能有正数和负数),求数组中连续子数组(最少有一个元素)的最大和。
要求时间复杂度为O(n)。 先输入数组的格式,再依次输入数组的值。
*/
/*
思路:
f(i) = pData[i](i=0或f(i-1)<0),f(i-1)+pData[i](f(i-1)>0且i!=0)
*/
#include<iostream>
#include<string.h>
#include<stdio.h>
#include<set>
#include<vector>
#include<limits.h>
using namespace std;
int main(){
int num;
cin>>num;
int maxVal = INT_MIN;
int sum = 0;
for(int i = 0; i < num; i++){
int val;
cin>>val;
sum += val;
maxVal = max(sum,maxVal);
sum = max(sum,0);
}
cout<< maxVal;
}
最新文章
- About_类与对象03
- 隐马尔可夫模型(Hidden Markov Model,HMM)
- 浙江理工2015.12校赛-B 七龙珠
- java初学。加载图片
- Scout YYF I(POJ 3744)
- Java 获取*.properties配置文件中的内容 ,常见的两种方法
- CentOS7安装Hadoop2.7完整流程
- 【转】MyBatis学习总结(一)——MyBatis快速入门
- linux系统用户锁定与解锁
- log4Net使用的四个步骤
- [Asp.Net Core] 1. IIS中的 Asp.Net Core 和 dotnet watch
- Python连接MySQL数据库之pymysql模块使用
- sql 找出不包含字母、不包含汉字的数据
- 一个基于angularJS的工资计算器
- 在vue中添加sass的配置的方法
- 使用U盘为龙芯笔记本安装操作系统
- 常用MQ及其原理
- Codeforces 1072 - A/B/C/D - (Done)
- mxnet ubuntu cpu安装
- C#反射遍历/查询类中的属性以及值