Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- #define rep(i, a, b) for(int i = (a); i < (b); ++i)
- #define trav(a, x) for(auto& a : x)
- #define all(x) begin(x), end(x)
- #define sz(x) (int)(x).size()
- #define pb push_back
- #define fst first
- #define snd second
- typedef long long ll;
- typedef long double ld;
- typedef pair<ll, ll> pii;
- typedef vector<ll> vi;
- typedef vector<vi> vvi;
- typedef vector<pii> vii;
- int main() {
- cin.sync_with_stdio(0); cin.tie(0);
- cin.exceptions(cin.failbit);
- int n;
- cin >> n;
- vi a(n);
- rep(i,0,n) cin >> a[i];
- multiset<int> arr;
- rep(i,0,n) {
- auto it= arr.lower_bound(a[i]);
- if (it != arr.end() and *it == a[i]) {
- arr.erase(it);
- }
- arr.insert(a[i]-1);
- }
- cout << sz(arr) << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement