#include <bits/stdc++.h>
using namespace std;
int n, a[200005], k, R;
long long S[200005];
double ans = -(1 << 30);
double F(int t, int k) {
  return 1.0 * (S[t] - S[t - k - 1] + S[n] - S[n - k]) / (2 * k + 1) - a[t];
}
int main() {
  int i, l, r, mid;
  scanf("%d", &n);
  for (i = 1; i <= n; i++) scanf("%d", &a[i]);
  sort(a + 1, a + n + 1);
  for (i = 1; i <= n; i++) S[i] = S[i - 1] + a[i];
  for (i = 1; i <= n; i++) {
    l = 0, r = min(i, n - i + 1);
    while (r - l > 1) {
      mid = (l + r) >> 1;
      if (F(i, mid) > F(i, mid - 1))
        l = mid;
      else
        r = mid;
    }
    if (F(i, l) > ans) ans = F(i, l), k = i, R = l;
  }
  printf("%d\n", 2 * R + 1);
  for (i = k - R; i <= k; i++) printf("%d ", a[i]);
  for (i = n - R + 1; i <= n; i++) printf("%d ", a[i]);
  return 0;
}
