How to find the maximum value we can achieve by picking k elements from an array in Go

1 Answer

0 votes
package main

import (
    "fmt"
    "sort"
)

func maxSumOfK(arr []int, k int) int {
    // Sort descending
    sort.Slice(arr, func(i, j int) bool {
        return arr[i] > arr[j]
    })

    sum := 0
    for i := 0; i < k; i++ {
        sum += arr[i]
    }
    
    return sum
}

func main() {
    arr := []int{11, 2, 4, 9, 3, 6, 5, 1}
    k := 3

    result := maxSumOfK(arr, k)
    fmt.Println(result) 
}


/*
run:

26

*/

 



answered Apr 6 by avibootz

Related questions

...