← Home
package main

import (
	"bufio"
	"fmt"
	"os"
	"sort"
)

func main() {
	reader := bufio.NewReader(os.Stdin)
	var n, k int
	if _, err := fmt.Fscan(reader, &n, &k); err != nil {
		return
	}

	a := make([]int, n)
	for i := 0; i < n; i++ {
		fmt.Fscan(reader, &a[i])
	}

	sort.Ints(a)

	ans := 0
	mod := 998244353

	prevDp := make([]int, n)
	currDp := make([]int, n)

	maxX := (a[n-1] - a[0]) / (k - 1)

	for x := 1; x <= maxX; x++ {
		for i := 0; i < n; i++ {
			prevDp[i] = 1
		}

		for j := 2; j <= k; j++ {
			sum := 0
			p := 0
			for i := 0; i < n; i++ {
				for p < i && a[i]-a[p] >= x {
					sum += prevDp[p]
					if sum >= mod {
						sum -= mod
					}
					p++
				}
				currDp[i] = sum
			}
			prevDp, currDp = currDp, prevDp
		}

		sumK := 0
		for i := 0; i < n; i++ {
			sumK += prevDp[i]
			if sumK >= mod {
				sumK -= mod
			}
		}

		if sumK == 0 {
			break
		}
		ans += sumK
		if ans >= mod {
			ans -= mod
		}
	}

	fmt.Println(ans)
}