#include <iostream>#include <stdio.h>#include <algorithm>using namespace std;const int INF=0x7fffffff;int n,k;long long a[100010];long long max_len_num;long long sum[100010];bool f(int t){ long long tmp; for(int i=t-1; i<n; i++) { if(i==t-1) tmp=a[i]*t-sum[i]; else tmp=a[i]*t-sum[i]+sum[i-t]; if(tmp<=k) { max_len_num=a[i]; return true; } } return false;}int main(){ scanf("%d%d",&n,&k); for(int i=0; i<n; i++) scanf("%lld",&a[i]); sort(a,a+n); sum[0]=a[0]; for(int i=1; i<n; i++) sum[i]=sum[i-1]+a[i]; int h=n; int l=1; int mid; while(l<=h) { mid=(h+l)/2; if(f(mid)) l=mid+1; else h=mid-1; } printf("%d %lld\n",h,max_len_num); return 0;}