LeetCode 435. Non-overlapping Intervals in F#
URL
Non-overlapping Intervals - LeetCode
Code
https://github.com/syohex/dotnet-study/tree/master/fsharp/leetcode/problems/0435/main.fsx
let eraseOverlapIntervals (intervals: (int * int) list) : int =
let rec eraseOverlapIntervals' intervals border acc =
match intervals with
| [] -> acc
| (startTime, endTime) :: t ->
if startTime >= border then
eraseOverlapIntervals' t endTime acc
else
eraseOverlapIntervals' t border (acc + 1)
let intervals' = List.sortBy snd intervals
eraseOverlapIntervals' intervals' System.Int32.MinValue 0