1299.go 616 B

123456789101112131415161718192021222324252627282930313233343536
  1. package main;
  2. import (
  3. "os"
  4. "fmt"
  5. )
  6. func replaceElements(arr []int) []int {
  7. if len(arr) == 1 { return []int{-1} }
  8. var ret []int = make([]int, len(arr))
  9. var i int = 0
  10. var arr_size int = len(arr)
  11. for ; i < arr_size; i += 1 {
  12. var max int = 0
  13. var j int = i+1
  14. for ; j < arr_size; j += 1 {
  15. if arr[j] > max { max = arr[j] }
  16. }
  17. ret[i] = max
  18. }
  19. ret[i-1] = -1
  20. return ret
  21. }
  22. func main() {
  23. r := func (arr []int, exp []int) {
  24. fmt.Printf("replaceElements(%v) = %v | exp: %v\n", arr, replaceElements(arr), exp)
  25. }
  26. r([]int{17,18,5,4,6,1}, []int{18,6,6,6,1,-1})
  27. r([]int{400}, []int{-1})
  28. os.Exit(0)
  29. }