原题链接

dp 应该算是一个特别简单的动态规划问题吧,代码中f数组的每一项表示的是前i项的最大子序和,如果这时候加上了一个nums[i],若比nums[i]小,说明前面的是一个负数,那么肯定就不要了,他会拉低整个子序和的大小,所以逐个进行判断,最终返回答案

题目
代码