```go
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
in := bufio.NewReader(os.Stdin)
out := bufio.NewWriter(os.Stdout)
defer out.Flush()
var n, k int
if _, err := fmt.Fscan(in, &n, &k); err != nil {
return
}
var cnt [101]int
for i := 0; i < n; i++ {
var a int
fmt.Fscan(in, &a)
cnt[a]++
}
m, mx := 0, 0
for i := 1; i <= 100; i++ {
if cnt[i] > 0 {
m++
if cnt[i] > mx {
mx = cnt[i]
}
}
}
d := (mx + k - 1) / k
ans := k * d * m - n
fmt.Fprintln(out, ans)
}
```