#include <bits/stdc++.h>
#define arr4 array <int , 4>
#define pii pair <int , int>
#define fi first
#define se second
#define BIT(x , k) ((x >> k)&1)
#define MASK(x) (1 << x)
#define int long long
#define ull unsigned long long
using namespace std;
const int maxn = 1e6 + 10;
const int INF = 1e18;
int n , bit[maxn] , a[maxn];
void update(int pos , int val)
{
while(pos < maxn)
{
bit[pos] += val;
pos += (pos & (-pos));
}
}
int get(int pos)
{
int res = 0;
while(pos > 0)
{
res += bit[pos];
pos -= (pos & (-pos));
}
return res;
}
int get_range(int l , int r)
{
if(r < l) return 0;
return get(r) - get(l-1);
}
void solve()
{
cin >> n;
for(int i = 1; i <= n; i++) cin >> a[i];
int ans = 0;
for(int i = 1; i <= n;)
{
int j = i;
int l = -INF;
int cnt = 0;
while(j <= n && a[j] >= l && get_range(a[i]+1 , a[j]-1) == 0)
{
l = a[j];
j++;
}
for(int k = i; k < j; k++) update(a[k] , 1);
ans++;
i = j;
}
cout << ans << '\n';
}
signed main()
{
ios_base::sync_with_stdio(false);
cin.tie(nullptr); cout.tie(nullptr);
solve();
return 0;
}