#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct subInfo {
int lastNum = 0;
int length = 0;
};
int main(void) {
int N;
cin >> N;
vector<int> A(N);
for (int i=0; i<N; i++) {
cin >> A[i];
}
int answer = 1;
vector<subInfo> data;
for (int i=0; i<N; i++) {
subInfo* pMaxSI = nullptr;
for (subInfo& si: data) {
if (si.lastNum < A[i] && (pMaxSI == nullptr || pMaxSI->length < si.length)) {
pMaxSI = &si;
}
}
if(pMaxSI == nullptr) {
data.push_back(subInfo{A[i], 1});
cout << A[i] << ' ' << 1 << endl;
}
else {
pMaxSI->lastNum = A[i];
pMaxSI->length++;
cout << pMaxSI->lastNum << ' ' << pMaxSI->length << endl;
answer = max(answer, pMaxSI->length);
}
}
cout << data.size() << endl;
cout << answer;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnN0cnVjdCBzdWJJbmZvIHsKICAgIGludCBsYXN0TnVtID0gMDsKICAgIGludCBsZW5ndGggPSAwOwp9OwoKaW50IG1haW4odm9pZCkgewogICAgaW50IE47CiAgICBjaW4gPj4gTjsKICAgIAogICAgdmVjdG9yPGludD4gQShOKTsKICAgIGZvciAoaW50IGk9MDsgaTxOOyBpKyspIHsKICAgICAgICBjaW4gPj4gQVtpXTsKICAgIH0KCiAgICBpbnQgYW5zd2VyID0gMTsKICAgIHZlY3RvcjxzdWJJbmZvPiBkYXRhOwogICAgCiAgICBmb3IgKGludCBpPTA7IGk8TjsgaSsrKSB7CiAgICAgICAgc3ViSW5mbyogcE1heFNJID0gbnVsbHB0cjsKICAgICAgICBmb3IgKHN1YkluZm8mIHNpOiBkYXRhKSB7CiAgICAgICAgICAgIGlmIChzaS5sYXN0TnVtIDwgQVtpXSAmJiAocE1heFNJID09IG51bGxwdHIgfHwgcE1heFNJLT5sZW5ndGggPCBzaS5sZW5ndGgpKSB7CiAgICAgICAgICAgICAgICBwTWF4U0kgPSAmc2k7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmKHBNYXhTSSA9PSBudWxscHRyKSB7CiAgICAgICAgICAgIGRhdGEucHVzaF9iYWNrKHN1YkluZm97QVtpXSwgMX0pOwogICAgICAgICAgICBjb3V0IDw8IEFbaV0gPDwgJyAnIDw8IDEgPDwgZW5kbDsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIHBNYXhTSS0+bGFzdE51bSA9IEFbaV07CiAgICAgICAgICAgIHBNYXhTSS0+bGVuZ3RoKys7CiAgICAgICAgICAgIGNvdXQgPDwgcE1heFNJLT5sYXN0TnVtIDw8ICcgJyA8PCBwTWF4U0ktPmxlbmd0aCA8PCBlbmRsOwogICAgICAgICAgICBhbnN3ZXIgPSBtYXgoYW5zd2VyLCBwTWF4U0ktPmxlbmd0aCk7CiAgICAgICAgfQogICAgfQoKCWNvdXQgPDwgZGF0YS5zaXplKCkgPDwgZW5kbDsKICAgIGNvdXQgPDwgYW5zd2VyOwoKICAgIHJldHVybiAwOwp9