#include <bits/stdc++.h>
using namespace std;
long long int dup[400006];
long long int pre[400006];
long long int cnt[400006];
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  long long int n, k, i, j, l;
  cin >> n >> k;
  long long int p;
  p = (k * 8) / n;
  if (p > 21) {
    cout << "0";
    return 0;
  }
  p = powl(2, p);
  long long int a[n], c = 0;
  for (i = 0; i < n; i++) {
    cin >> a[i];
  }
  sort(a, a + n);
  j = 0;
  cnt[j] = 1;
  for (i = 1; i < n; i++) {
    if (a[i] == a[i - 1]) {
      cnt[j]++;
    } else {
      j++;
      cnt[j]++;
    }
  }
  if (p >= j + 1) {
    cout << "0";
    return 0;
  }
  pre[0] = cnt[0];
  long long int ans = 0;
  for (i = 1; i < j; i++) {
    pre[i] = pre[i - 1] + cnt[i];
  }
  for (i = 0; i < j; i++) {
    if (i >= p - 1) {
      if (i == p - 1) {
        ans = max(ans, pre[i]);
      } else {
        ans = max(ans, pre[i] - pre[i - p]);
      }
    }
  }
  cout << n - ans;
  return 0;
}
