Bladeren bron

Adding an even faster solution for 1299

Vinicius Teshima 1 maand geleden
bovenliggende
commit
a80c850333
1 gewijzigde bestanden met toevoegingen van 9 en 10 verwijderingen
  1. 9 10
      Go/1299.go

+ 9 - 10
Go/1299.go

@@ -8,20 +8,19 @@ import (
 func replaceElements(arr []int) []int {
 	if len(arr) == 1 { return []int{-1} }
 
-	var ret []int = make([]int, len(arr))
-
-	var i int = 0
 	var arr_size int = len(arr)
-	for ; i < arr_size; i += 1 {
-		var max int = 0
-		var j int = i+1
-		for ; j < arr_size; j += 1 {
-			if arr[j] > max { max = arr[j] }
-		}
+	var ret []int = make([]int, arr_size)
+
+	var max int = 0
+
+	var i int = arr_size - 1
+	for ; i > 0; i -= 1 {
 		ret[i] = max
+		if arr[i] > max { max = arr[i] }
 	}
+	ret[0] = max
 
-	ret[i-1] = -1
+	ret[arr_size-1] = -1
 	return ret
 }