#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long int ll; typedef pair P; int main() { vector mn; int n; cin>>n; mn.push_back(0); int add=0; for(int i=0; i>a; int j=lower_bound(mn.begin(), mn.end(), a-add)-mn.begin(); add++; if(j==mn.size()) mn.push_back(a-add); else if(j>0) mn[j]=a-add; } cout<