#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define FOR(i, a, b) for(itr i{a}; i < (b); ++i) #define RFOR(i, a, b) for(itr i{(b)-1};i >= (a); --i) #define REP(i, n) FOR(i, 0, n) #define RREP(i, n) RFOR(i, 0, n) #define ALL(a) std::begin(a), std::end(a) #define CAST static_cast template constexpr bool in_range(T const &l, T const &a, T const &u){ return l < a && a < u; }; constexpr double inf{std::numeric_limits::infinity()}; using i32 = std::int_fast32_t; using i64 = std::int_fast64_t; using u32 = std::uint_fast32_t; using u64 = std::uint_fast64_t; using itr = i32; using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(0); i32 N; cin >> N; vector a(N); for(auto &a_i : a) cin >> a_i; i32 ran{1}; cout << ran << endl; for(itr i{1}; i < a.size(); ++i){ if(a[0] < a[i]) ++ran; cout << ran << endl; } return 0; }