import java.util.Arrays;
import java.util.HashMap;
import java.util.Scanner;
public class Main {
static long[] a=new long[1000005];
static long[] b=new long[1000005];
static int[] c=new int[200005];
static int[] d=new int[500005];
static int[] e=new int[200005];
static int[] f=new int[200005];
static int t=520;
static int ans=0;
static int max=-1;
static int min=(int)2e+9;
static int n=0;
static int m=0;
static int sum=0;
static int l=0;
static int r=0;
static HashMap<Integer,Integer> map=new HashMap<>();
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
n=sc.nextInt();
m=sc.nextInt();
for(int i=1;i<=n;i++) {
l=sc.nextInt();
f[l]++;
max=Math.max(max,l);
min=Math.min(min,l);
}
if(min==max){
System.out.println(ans);
}
else{
for(int i=200003;i>min;i--) {
f[i]+=f[i+1];
if(sum+f[i]>m) {
ans++;
sum=f[i];
}
else{
sum+=f[i];
}
}
System.out.println(sum>0?ans+1:ans);
}
}
}