# Leetcode 解題速記 53. Maxmium Subarray ###### tags: `LeetCode` `C++` 題敘: --- Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum. A subarray is a contiguous part of an array. 測資範圍: --- * 1 <= nums.length <= 105 * -104 <= nums[i] <= 104 解題筆記: --- 經典DP題 開一個sum變數紀錄總和,當總和比max大時就更新max 若sum<0則重新開始紀錄 程式碼: --- ```c= int maxSubArray(int* nums, int numsSize){ int i=0,sum=0; int max=nums[0]; for(int i=0;i<numsSize;i++){ sum+=nums[i]; if(max<sum){ max=sum; } if(sum<0){ sum=0; } } return max; } ```