#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N = 20;
int dp[1<<N];
int a[N];
int n , x;
int getSum(int mask){
	int sum = 0;
	for(int i = 0;i<n;i++){
		if(mask & (1<<i)){
			sum += a[i];
		}
	}
	return sum;
}
int solve(int mask){
	if(mask == ((1<<n) - 1)){
		return 0;
	}
	if(dp[mask]!=-1)
		return dp[mask];
	int ans = INT_MAX;
	int sum = getSum(mask);
	int rem = sum%x;
	int prev = sum/x + (rem > 0);
	for(int i = 0;i<n;i++){
		if(mask & (1<<i)) continue;
		int newSum = sum + a[i];
		int curr = (newSum/x) + ((newSum%x) > 0);
		ans = min(ans , (curr > prev) + solve(mask|(1<<i)));
	}
	dp[mask] = ans;
	return ans;
}
signed main(){
	ios_base::sync_with_stdio(0);
	cin.tie(0);cout.tie(0);
	memset(dp,-1,sizeof(dp));
	cin >> n >> x;
	for(int i = 0;i<n;i++){
		cin >> a[i];
	}
	cout<<solve(0);
}