結果
| 問題 | No.1046 Fruits Rush | 
| コンテスト | |
| ユーザー |  urutom | 
| 提出日時 | 2022-10-19 02:57:33 | 
| 言語 | Go (1.23.4) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 2 ms / 2,000 ms | 
| コード長 | 780 bytes | 
| コンパイル時間 | 13,033 ms | 
| コンパイル使用メモリ | 223,224 KB | 
| 実行使用メモリ | 5,376 KB | 
| 最終ジャッジ日時 | 2024-06-29 08:11:13 | 
| 合計ジャッジ時間 | 11,885 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 14 | 
ソースコード
package main
import (
	"bufio"
	"fmt"
	"math"
	"os"
	"sort"
	"strconv"
)
const MaxInt = math.MaxInt64
var scanner *bufio.Scanner
func main() {
	n, k := Int(), Int()
	a := Ints(n)
	sort.Ints(a)
	ans := a[n-1]
	k--
	for i := n - 2; i >= 0 && k > 0 && a[i] > 0; i, k = i-1, k-1 {
		ans += a[i]
	}
	fmt.Println(ans)
}
func init() {
	scanner = bufio.NewScanner(os.Stdin)
	scanner.Buffer([]byte{}, MaxInt)
	scanner.Split(bufio.ScanWords)
}
func Int() int {
	scanner.Scan()
	ret, _ := strconv.ParseInt(scanner.Text(), 10, 0)
	return int(ret)
}
func Ints(n int) []int {
	ret := make([]int, n)
	for i := 0; i < n; i++ {
		ret[i] = Int()
	}
	return ret
}
func Max(a, b int) int {
	if a < b {
		return b
	}
	return a
}
func Min(a, b int) int {
	if a < b {
		return a
	}
	return b
}
            
            
            
        