做網(wǎng)站和app有什么區(qū)別seo工資水平
給你一個(gè)整數(shù)數(shù)組?nums
?,請(qǐng)你找出一個(gè)具有最大和的連續(xù)子數(shù)組(子數(shù)組最少包含一個(gè)元素),返回其最大和。
子數(shù)組是數(shù)組中的一個(gè)連續(xù)部分。
示例 1:
輸入:nums = [-2,1,-3,4,-1,2,1,-5,4] 輸出:6 解釋:連續(xù)子數(shù)組?[4,-1,2,1] 的和最大,為?6 。
示例 2:
輸入:nums = [1] 輸出:1
示例 3:
輸入:nums = [5,4,-1,7,8] 輸出:23
提示:當(dāng)前面序數(shù)和為負(fù)數(shù)時(shí),直接舍去前面的序數(shù)
(INT32_MAX與INT32_MIN 是 C++ 的宏定義,代表了整型變量能夠存儲(chǔ)的最大正整數(shù)和最小負(fù)整數(shù),分別為?2147483647?和?-2147483648,這兩個(gè)宏在頭文件?<limits.h>?中定義。)
class Solution {
public:int maxSubArray(vector<int>& nums) {int result=INT32_MIN;int count=0;for(int i=0;i<nums.size();i++){count+=nums[i];if(count>result){result=count;}if(count<=0){count=0;}}return result;}
};