(intervals [][]int, count int)
| 56 | } |
| 57 | |
| 58 | func eraseOverlapHelper(intervals [][]int, count int) int { |
| 59 | min := math.MaxInt32 |
| 60 | if !overlaps(intervals) { |
| 61 | min = count |
| 62 | } |
| 63 | |
| 64 | for i := 0; i < len(intervals); i++ { |
| 65 | front := intervals[:i] |
| 66 | back := intervals[i+1:] |
| 67 | next := append(append([][]int{}, front...), back...) |
| 68 | min = int(math.Min(float64(min), float64(eraseOverlapHelper(next, count+1)))) |
| 69 | } |
| 70 | |
| 71 | return min |
| 72 | } |
| 73 | |
| 74 | func overlaps(intervals [][]int) bool { |
| 75 | for j := 1; j < len(intervals); j++ { |
no test coverage detected