#include <iostream>
using namespace std;
int Y, P, popes[100001];
int binser_upper(int cari) {
// upper bound
int L = 0, R = P-1, M = (L+R+1)/2;
while(L < R) {
if(popes[M] <= cari)
L = M;
else // popes[M] > cari
R = M-1;
M = (L+R+1)/2;
}
return L+1;
}
int main() {
while(cin >> Y >> P) {
for(int i = 0; i < P; i++)
cin >> popes[i];
int max_ans = -1, max_year = -1;
for(int i = 0; i < P; i++) {
int cari = Y+popes[i]-1;
int ans = binser_upper(cari)-i;
// cout << i << " " << popes[i] << " " << cari << " " << ans << endl;
if(ans > max_ans) {
max_ans = ans;
max_year = i;
}
}
cout << max_ans << " " << popes[max_year] << " " << Y+popes[max_year]-1 << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IFksIFAsIHBvcGVzWzEwMDAwMV07CgppbnQgYmluc2VyX3VwcGVyKGludCBjYXJpKSB7CgkvLyB1cHBlciBib3VuZAoJaW50IEwgPSAwLCBSID0gUC0xLCBNID0gKEwrUisxKS8yOwoJd2hpbGUoTCA8IFIpIHsKCQlpZihwb3Blc1tNXSA8PSBjYXJpKQoJCQlMID0gTTsKCQllbHNlIC8vIHBvcGVzW01dID4gY2FyaQoJCQlSID0gTS0xOwoJCU0gPSAoTCtSKzEpLzI7Cgl9CglyZXR1cm4gTCsxOwp9CgppbnQgbWFpbigpIHsKCXdoaWxlKGNpbiA+PiBZID4+IFApIHsKCQlmb3IoaW50IGkgPSAwOyBpIDwgUDsgaSsrKQoJCQljaW4gPj4gcG9wZXNbaV07CgkJaW50IG1heF9hbnMgPSAtMSwgbWF4X3llYXIgPSAtMTsKCQlmb3IoaW50IGkgPSAwOyBpIDwgUDsgaSsrKSB7CgkJCWludCBjYXJpID0gWStwb3Blc1tpXS0xOwoJCQlpbnQgYW5zID0gYmluc2VyX3VwcGVyKGNhcmkpLWk7CgkJCS8vIGNvdXQgPDwgaSA8PCAiICIgPDwgcG9wZXNbaV0gPDwgIiAiIDw8IGNhcmkgPDwgIiAiIDw8IGFucyA8PCBlbmRsOwoJCQlpZihhbnMgPiBtYXhfYW5zKSB7CgkJCQltYXhfYW5zID0gYW5zOwoJCQkJbWF4X3llYXIgPSBpOwoJCQl9CgkJfQoJCWNvdXQgPDwgbWF4X2FucyA8PCAiICIgPDwgcG9wZXNbbWF4X3llYXJdIDw8ICIgIiA8PCBZK3BvcGVzW21heF95ZWFyXS0xIDw8IGVuZGw7Cgl9CglyZXR1cm4gMDsKfQ==