dengxinyi 6 anos atrás
pai
commit
70fa8ca59b

+ 9 - 0
medium/537.complex-number-multiplication.go

@@ -0,0 +1,9 @@
+func complexNumberMultiply(a string, b string) string {
+	s1 := strings.Split(a, "+")
+	s2 := strings.Split(b, "+")
+	a1, _ := strconv.Atoi(s1[0])
+	a2, _ := strconv.Atoi(s1[1][:len(s1[1])-1])
+	b1, _ := strconv.Atoi(s2[0])
+	b2, _ := strconv.Atoi(s2[1][:len(s2[1])-1])
+	return fmt.Sprintf("%d+%di", a1*b1-a2*b2, a1*b2+a2*b1)
+}

+ 28 - 0
medium/539.minimum-time-difference.go

@@ -0,0 +1,28 @@
+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
+}