|
@@ -0,0 +1,36 @@
|
|
|
|
|
+package main;
|
|
|
|
|
+
|
|
|
|
|
+import (
|
|
|
|
|
+ "os"
|
|
|
|
|
+ "fmt"
|
|
|
|
|
+)
|
|
|
|
|
+
|
|
|
|
|
+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] }
|
|
|
|
|
+ }
|
|
|
|
|
+ ret[i] = max
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ ret[i-1] = -1
|
|
|
|
|
+ return ret
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+func main() {
|
|
|
|
|
+ r := func (arr []int, exp []int) {
|
|
|
|
|
+ fmt.Printf("replaceElements(%v) = %v | exp: %v\n", arr, replaceElements(arr), exp)
|
|
|
|
|
+ }
|
|
|
|
|
+ r([]int{17,18,5,4,6,1}, []int{18,6,6,6,1,-1})
|
|
|
|
|
+ r([]int{400}, []int{-1})
|
|
|
|
|
+
|
|
|
|
|
+ os.Exit(0)
|
|
|
|
|
+}
|