# 04.02.2025 [1800. Maximum Ascending Subarray Sum]
Max increasing subarray sum #easy
04.02.2025
1800. Maximum Ascending Subarray Sum easy blog post substack youtube
Join me on Telegram
Problem TLDR
Max increasing subarray sum #easy
Intuition
Use brute-force, two-pointers or running sum.
Approach
Rust has a nice chunk_by
Complexity
Time complexity: $$O(n)$$
Space complexity: $$O(1)$$
Code
fun maxAscendingSum(nums: IntArray) =
nums.indices.maxOf { i ->
var j = i + 1; while (j < nums.size && nums[j] > nums[j - 1]) j++
nums.slice(i..<j).sum()
}
pub fn max_ascending_sum(nums: Vec<i32>) -> i32 {
nums.chunk_by(|a, b| a < b).map(|c| c.iter().sum()).max().unwrap()
}
int maxAscendingSum(vector<int>& n) {
int r = n[0];
for (int i = 1, s = n[0]; i < size(n); ++i)
r = max(r, s = n[i - 1] < n[i] ? s + n[i] : n[i]);
return r;
}

