func findMinDifference(timePoints []string) int { n := len(timePoints) mins := make([]int, n) for i := range mins { mins[i] = time2int(timePoints[i]) } sort.Ints(mins) const day int = 24 * 60 diff := day for i := 0; i < n-1; i++ { diff = minInt(diff, mins[i+1]-mins[i]) } diff = minInt(diff, mins[0]+day-mins[n-1]) return diff } func time2int(t string) int { h := int(t[0]*10+t[1]) - 528 m := int(t[3]*10+t[4]) - 528 return h*60 + m } func minInt(x, y int) int { if x < y { return x } return y }