LeetCode 1749. Maximum Absolute Sum of Any Subarray in F#

URL

Maximum Absolute Sum of Any Subarray - LeetCode

Code

https://github.com/syohex/dotnet-study/tree/master/fsharp/leetcode/challenge/202502/maximum_absolute_sum_of_any_subarray/main.fsx

let maxAbsoluteSum (nums: int list) : int =
    let maxVal, _ =
        nums
        |> List.fold
            (fun (acc, sum) n ->
                let sum = max (sum + n) n
                max acc sum, sum)
            (0, 0)

    let minVal, _ =
        nums
        |> List.fold
            (fun (acc, sum) n ->
                let sum = min (sum + n) n
                min acc sum, sum)
            (0, 0)

    max (System.Math.Abs(maxVal)) (System.Math.Abs(minVal))