#include <bits/stdc++.h>
using namespace std;
long long a[200005], sum[200005];
int n;
long long int calc(int len, int pos) {
  long long int num;
  num = sum[n] - sum[n - len] + sum[pos] - sum[pos - len - 1];
  return num;
}
int main() {
  int len = 0, mid = 1;
  long long int maxn = 0;
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) scanf("%I64d", &a[i]);
  sort(a + 1, a + n + 1);
  for (int i = 1; i <= n; i++) sum[i] = sum[i - 1] + a[i];
  for (int i = 2; i <= n - 1; i++) {
    int l = 0, r = min(i - 1, n - i);
    while (l < r) {
      int lmid = (l + r) / 2;
      int rmid = (lmid + r + 1) / 2;
      long long int ans1 = calc(lmid, i);
      long long int ans2 = calc(rmid, i);
      if (ans1 * (2 * rmid + 1) < ans2 * (2 * lmid + 1))
        l = lmid + 1;
      else
        r = rmid - 1;
    }
    long long ans = calc(l, i) - a[i] * (2 * l + 1);
    if (ans * (2 * len + 1) > maxn * (2 * l + 1)) {
      maxn = ans;
      len = l;
      mid = i;
    }
  }
  printf("%d\n", 2 * len + 1);
  for (int i = mid - len; i <= mid; i++) printf("%I64d ", a[i]);
  for (int i = n - len + 1; i <= n; i++) printf("%I64d ", a[i]);
  return 0;
}
