題名:
给你一个正整数组成的数组 nums ,返回 nums 中一个 升序 子数组的最大可能元素和。
子数组是数组中的一个连续数字序列。
已知子数组 [numsl, numsl+1, ..., numsr-1, numsr] ,
若对所有 i(l <= i < r),numsi < numsi+1 都成立,则称这一子数组为 升序 子数组。
注意,大小为 1 的子数组也视作 升序 子数组。
数据范围:
1 <= nums.length <= 100
1 <= nums[i] <= 100
解決:
观察到数据范围较小,O(n^2)暴力枚举所有区间即可.
コード:
class Solution {
public:
int maxAscendingSum(vector<int>& a) {
int n=a.size();
int ans=0;
for(int l=0;l<n;l++){
int sum=a[l];
for(int r=l+1;r<n;r++){
if(a[r]<=a[r-1])break;
sum+=a[r];
}
ans=max(ans,sum);
}
return ans;
}
};