标题44:最小子配列


タイトルの説明:
整数配列を指定し、最小和を持つサブ配列を見つけます.最小和を返します.注意:サブ配列には、少なくとも1つの数字が含まれています.たとえば、配列[1,-1,-2,1]が与えられ、-3が返されます.
コード:
class Solution 
{
public:

    int minSubArray(vector<int> nums)
    {
        int minSum = nums[0];
        int sum = 0;
        int maxSum = 0;

        for (int i = 0; i < nums.size(); i++)
        {
            sum += nums[i];
            if (sum - maxSum < minSum)
            {
                minSum = sum - maxSum;
            }
            if (sum > maxSum)
            {
                sum = maxSum;
            }
        }
        return minSum;
    }

};