#include <bits/stdc++.h>
#define For(i, a, b) for(int i = (a); i < (b); ++i)
#define rep(i, a, b) for(int i = (a); i <=(b); ++i)
#define Ford(i, a, b) for(int i = (a); i > (b); --i)
#define repd(i, a, b) for(int i = (a); i >=(b); --i)
#define forit(it,v) for(it=v.begin();it!=v.end();it++)
#define ms(a, v) memset(a, (v), sizeof(a))
#define pb push_back
#define pf push_front
#define pob pop_back
#define pof pop_front
#define mp make_pair
#define ll long long
#define ld long double
#define ii pair<int, int>
#define fi first
#define se second
#define vi vector<int>
#define vii vector<ii>
#define endl '\n'
#define openfi freopen("in.tt","r",stdin)
#define openfo freopen("out.tt","w",stdout)
using namespace std;
const int maxn=100001;
int n,a[maxn],le[maxn],lb[maxn],d,f[maxn];
void enter()
{
cin >> n;
rep(i,1,n) cin >> a[i];
}
void lis()
{
vi res;
res.pb(a[1]);
le[1]=1;
vi::iterator it;
rep(i,2,n)
{
it=lower_bound(res.begin(),res.end(),a[i]);
if (it==res.end()) {res.pb(a[i]);le[i]=res.size();}
else { *it=a[i]; le[i]=distance(res.begin(),it)+1; }
}
d=res.size();
deque<int> res2;
deque<int>::iterator it2;
res2.pf(a[n]);
lb[n]=1;
repd(i,n-1,1)
{
it2=upper_bound(res2.begin(),res2.end(),a[i])-1;
if (it2<res2.begin()) { res2.pf(a[i]); lb[i]=res2.size(); }
else { *it2=a[i]; lb[i]=distance(it2,res2.end());}
}
//rep(i,1,n) cout << le[i] << " " << lb[i] << endl;
}
void process()
{
rep(i,1,n)
if (le[i]+lb[i]==d+1)
f[le[i]]++;
rep(i,1,n)
if (le[i]+lb[i]<d+1) cout <<'1';
else if (f[le[i]]>1) cout <<'2';
else cout <<'3';
}
int main()
{
ios::sync_with_stdio(0); cin.tie(0);
//openfi;
enter();
lis();
process();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CgojZGVmaW5lIEZvcihpLCBhLCBiKSBmb3IoaW50IGkgPSAoYSk7IGkgPCAoYik7ICsraSkKI2RlZmluZSByZXAoaSwgYSwgYikgZm9yKGludCBpID0gKGEpOyBpIDw9KGIpOyArK2kpCiNkZWZpbmUgRm9yZChpLCBhLCBiKSBmb3IoaW50IGkgPSAoYSk7IGkgPiAoYik7IC0taSkKI2RlZmluZSByZXBkKGksIGEsIGIpIGZvcihpbnQgaSA9IChhKTsgaSA+PShiKTsgLS1pKQojZGVmaW5lIGZvcml0KGl0LHYpIGZvcihpdD12LmJlZ2luKCk7aXQhPXYuZW5kKCk7aXQrKykKI2RlZmluZSBtcyhhLCB2KSBtZW1zZXQoYSwgKHYpLCBzaXplb2YoYSkpCiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgcGYgcHVzaF9mcm9udAojZGVmaW5lIHBvYiBwb3BfYmFjawojZGVmaW5lIHBvZiBwb3BfZnJvbnQKI2RlZmluZSBtcCBtYWtlX3BhaXIKI2RlZmluZSBsbCBsb25nIGxvbmcKI2RlZmluZSBsZCBsb25nIGRvdWJsZQojZGVmaW5lIGlpIHBhaXI8aW50LCBpbnQ+CiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSB2aSB2ZWN0b3I8aW50PgojZGVmaW5lIHZpaSB2ZWN0b3I8aWk+CiNkZWZpbmUgZW5kbCAnXG4nCiNkZWZpbmUgb3BlbmZpIGZyZW9wZW4oImluLnR0IiwiciIsc3RkaW4pCiNkZWZpbmUgb3BlbmZvIGZyZW9wZW4oIm91dC50dCIsInciLHN0ZG91dCkKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmNvbnN0IGludCBtYXhuPTEwMDAwMTsKCmludCBuLGFbbWF4bl0sbGVbbWF4bl0sbGJbbWF4bl0sZCxmW21heG5dOwoKdm9pZCBlbnRlcigpCnsKICAgIGNpbiA+PiBuOwogICAgcmVwKGksMSxuKSBjaW4gPj4gYVtpXTsKfQoKdm9pZCBsaXMoKQp7CiAgICB2aSByZXM7CiAgICByZXMucGIoYVsxXSk7CiAgICBsZVsxXT0xOwogICAgdmk6Oml0ZXJhdG9yIGl0OwogICAgcmVwKGksMixuKQogICAgewogICAgICAgIGl0PWxvd2VyX2JvdW5kKHJlcy5iZWdpbigpLHJlcy5lbmQoKSxhW2ldKTsKICAgICAgICBpZiAoaXQ9PXJlcy5lbmQoKSkge3Jlcy5wYihhW2ldKTtsZVtpXT1yZXMuc2l6ZSgpO30KICAgICAgICBlbHNlIHsgKml0PWFbaV07IGxlW2ldPWRpc3RhbmNlKHJlcy5iZWdpbigpLGl0KSsxOyB9CiAgICB9CiAgICBkPXJlcy5zaXplKCk7CiAgICBkZXF1ZTxpbnQ+IHJlczI7CiAgICBkZXF1ZTxpbnQ+OjppdGVyYXRvciBpdDI7CiAgICByZXMyLnBmKGFbbl0pOwogICAgbGJbbl09MTsKICAgIHJlcGQoaSxuLTEsMSkKICAgIHsKICAgICAgICBpdDI9dXBwZXJfYm91bmQocmVzMi5iZWdpbigpLHJlczIuZW5kKCksYVtpXSktMTsKICAgICAgICBpZiAoaXQyPHJlczIuYmVnaW4oKSkgeyByZXMyLnBmKGFbaV0pOyBsYltpXT1yZXMyLnNpemUoKTsgfQogICAgICAgIGVsc2UgeyAqaXQyPWFbaV07IGxiW2ldPWRpc3RhbmNlKGl0MixyZXMyLmVuZCgpKTt9CiAgICB9CiAgICAvL3JlcChpLDEsbikgY291dCA8PCBsZVtpXSA8PCAiICIgPDwgbGJbaV0gPDwgZW5kbDsKfQoKdm9pZCBwcm9jZXNzKCkKewogICAgcmVwKGksMSxuKQogICAgaWYgKGxlW2ldK2xiW2ldPT1kKzEpCiAgICBmW2xlW2ldXSsrOwogICAgcmVwKGksMSxuKQogICAgaWYgKGxlW2ldK2xiW2ldPGQrMSkgY291dCA8PCcxJzsKICAgIGVsc2UgaWYgKGZbbGVbaV1dPjEpIGNvdXQgPDwnMic7CiAgICBlbHNlIGNvdXQgPDwnMyc7Cn0KaW50IG1haW4oKQp7CiAgICBpb3M6OnN5bmNfd2l0aF9zdGRpbygwKTsgY2luLnRpZSgwKTsKICAgIC8vb3BlbmZpOwogICAgZW50ZXIoKTsKICAgIGxpcygpOwogICAgcHJvY2VzcygpOwogICAgcmV0dXJuIDA7Cn0=
Main.java:1: error: illegal character: '#'
#include <bits/stdc++.h>
^
Main.java:1: error: class, interface, or enum expected
#include <bits/stdc++.h>
^
Main.java:3: error: illegal character: '#'
#define For(i, a, b) for(int i = (a); i < (b); ++i)
^
Main.java:3: error: class, interface, or enum expected
#define For(i, a, b) for(int i = (a); i < (b); ++i)
^
Main.java:3: error: class, interface, or enum expected
#define For(i, a, b) for(int i = (a); i < (b); ++i)
^
Main.java:4: error: illegal character: '#'
#define rep(i, a, b) for(int i = (a); i <=(b); ++i)
^
Main.java:4: error: class, interface, or enum expected
#define rep(i, a, b) for(int i = (a); i <=(b); ++i)
^
Main.java:4: error: class, interface, or enum expected
#define rep(i, a, b) for(int i = (a); i <=(b); ++i)
^
Main.java:5: error: illegal character: '#'
#define Ford(i, a, b) for(int i = (a); i > (b); --i)
^
Main.java:5: error: class, interface, or enum expected
#define Ford(i, a, b) for(int i = (a); i > (b); --i)
^
Main.java:5: error: class, interface, or enum expected
#define Ford(i, a, b) for(int i = (a); i > (b); --i)
^
Main.java:6: error: illegal character: '#'
#define repd(i, a, b) for(int i = (a); i >=(b); --i)
^
Main.java:6: error: class, interface, or enum expected
#define repd(i, a, b) for(int i = (a); i >=(b); --i)
^
Main.java:6: error: class, interface, or enum expected
#define repd(i, a, b) for(int i = (a); i >=(b); --i)
^
Main.java:7: error: illegal character: '#'
#define forit(it,v) for(it=v.begin();it!=v.end();it++)
^
Main.java:7: error: class, interface, or enum expected
#define forit(it,v) for(it=v.begin();it!=v.end();it++)
^
Main.java:7: error: class, interface, or enum expected
#define forit(it,v) for(it=v.begin();it!=v.end();it++)
^
Main.java:8: error: illegal character: '#'
#define ms(a, v) memset(a, (v), sizeof(a))
^
Main.java:9: error: illegal character: '#'
#define pb push_back
^
Main.java:10: error: illegal character: '#'
#define pf push_front
^
Main.java:11: error: illegal character: '#'
#define pob pop_back
^
Main.java:12: error: illegal character: '#'
#define pof pop_front
^
Main.java:13: error: illegal character: '#'
#define mp make_pair
^
Main.java:14: error: illegal character: '#'
#define ll long long
^
Main.java:15: error: illegal character: '#'
#define ld long double
^
Main.java:16: error: illegal character: '#'
#define ii pair<int, int>
^
Main.java:17: error: illegal character: '#'
#define fi first
^
Main.java:18: error: illegal character: '#'
#define se second
^
Main.java:19: error: illegal character: '#'
#define vi vector<int>
^
Main.java:20: error: illegal character: '#'
#define vii vector<ii>
^
Main.java:21: error: illegal character: '#'
#define endl '\n'
^
Main.java:22: error: illegal character: '#'
#define openfi freopen("in.tt","r",stdin)
^
Main.java:23: error: illegal character: '#'
#define openfo freopen("out.tt","w",stdout)
^
Main.java:26: error: class, interface, or enum expected
const int maxn=100001;
^
Main.java:28: error: class, interface, or enum expected
int n,a[maxn],le[maxn],lb[maxn],d,f[maxn];
^
Main.java:30: error: class, interface, or enum expected
void enter()
^
Main.java:33: error: class, interface, or enum expected
rep(i,1,n) cin >> a[i];
^
Main.java:34: error: class, interface, or enum expected
}
^
Main.java:39: error: class, interface, or enum expected
res.pb(a[1]);
^
Main.java:40: error: class, interface, or enum expected
le[1]=1;
^
Main.java:41: error: class, interface, or enum expected
vi::iterator it;
^
Main.java:42: error: class, interface, or enum expected
rep(i,2,n)
^
Main.java:45: error: class, interface, or enum expected
if (it==res.end()) {res.pb(a[i]);le[i]=res.size();}
^
Main.java:45: error: class, interface, or enum expected
if (it==res.end()) {res.pb(a[i]);le[i]=res.size();}
^
Main.java:45: error: class, interface, or enum expected
if (it==res.end()) {res.pb(a[i]);le[i]=res.size();}
^
Main.java:46: error: class, interface, or enum expected
else { *it=a[i]; le[i]=distance(res.begin(),it)+1; }
^
Main.java:46: error: class, interface, or enum expected
else { *it=a[i]; le[i]=distance(res.begin(),it)+1; }
^
Main.java:49: error: class, interface, or enum expected
deque<int> res2;
^
Main.java:50: error: class, interface, or enum expected
deque<int>::iterator it2;
^
Main.java:51: error: class, interface, or enum expected
res2.pf(a[n]);
^
Main.java:52: error: class, interface, or enum expected
lb[n]=1;
^
Main.java:53: error: class, interface, or enum expected
repd(i,n-1,1)
^
Main.java:56: error: class, interface, or enum expected
if (it2<res2.begin()) { res2.pf(a[i]); lb[i]=res2.size(); }
^
Main.java:56: error: class, interface, or enum expected
if (it2<res2.begin()) { res2.pf(a[i]); lb[i]=res2.size(); }
^
Main.java:56: error: class, interface, or enum expected
if (it2<res2.begin()) { res2.pf(a[i]); lb[i]=res2.size(); }
^
Main.java:57: error: class, interface, or enum expected
else { *it2=a[i]; lb[i]=distance(it2,res2.end());}
^
Main.java:57: error: class, interface, or enum expected
else { *it2=a[i]; lb[i]=distance(it2,res2.end());}
^
Main.java:67: error: class, interface, or enum expected
rep(i,1,n)
^
Main.java:69: error: class, interface, or enum expected
else if (f[le[i]]>1) cout <<'2';
^
Main.java:70: error: class, interface, or enum expected
else cout <<'3';
^
Main.java:71: error: class, interface, or enum expected
}
^
Main.java:74: error: class, interface, or enum expected
ios::sync_with_stdio(0); cin.tie(0);
^
Main.java:76: error: class, interface, or enum expected
enter();
^
Main.java:77: error: class, interface, or enum expected
lis();
^
Main.java:78: error: class, interface, or enum expected
process();
^
Main.java:79: error: class, interface, or enum expected
return 0;
^
Main.java:80: error: class, interface, or enum expected
}
^
67 errors