#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=2e4+10;
int dp[maxn][maxn],mp[maxn],num[maxn];
int main()
{
	memset(dp,0,sizeof dp);
	memset(mp,0,sizeof mp);
	int n,k;
	scanf("%d%d",&n,&k);
	for(int i=1;i<=n;i++)
	{
		scanf("%d",&num[i]);
		mp[num[i]]++;
	}
	sort(num+1,num+n+1);
	for(int i=1;i<=n;i++)
	{
		if(num[i]==num[i-1]&&i>1) continue;
		int t=num[i];
		while(t)
		{
			dp[t/2][num[i]]++;
			t/=2;
		}
	}
	int ans=0x3f3f3f3f;
	for(int i=0;i<=num[n];i++)
	{
		vector<int> ve;
		for(int j=1;j<=n;j++)
		{
			if(dp[i][num[j]])
			{
				int tt=mp[j];
				while(tt)
				{
					ve.push_back(dp[i][num[j]]);
					tt--;
				}
			}
			if(i==num[j])
				for(int a=0;a<mp[j];a++)
					ve.push_back(0);
		}
		if(ve.size()>=k)
		{
			int len=ve.size(),res=0;
			sort(ve.begin(),ve.end());
			for(int a=0;a<k;a++)
				res+=ve[a];
			ans=min(ans,res);
		}
	}
	cout<<ans;
	return 0;
 } 