#include <bits/stdc++.h> #define REP(i, n) for (int i = 0; (i) < int(n); ++ (i)) using namespace std; /** * @note returns strict increasing one */ template <typename T> vector<T> longest_increasing_subsequence(vector<T> const & xs) { vector<T> l; // l[i] is the last element of the increasing subsequence whose length is i + 1 l.push_back(xs.front()); for (auto && x : xs) { auto it = lower_bound(l.begin(), l.end(), x); if (it == l.end()) { l.push_back(x); } else { *it = x; } } return l; } int main() { // input int n; cin >> n; vector<int> a(n); REP (i, n) cin >> a[i]; // solve int answer = n - longest_increasing_subsequence(a).size(); // output cout << answer << endl; return 0; }