View Code of Problem 3867

#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
const int maxn = 1e6+50;
const ll INF = 0xffffffff;

int a[maxn];
int vis[maxn];

int main()
{
    ll n;
    scanf("%lld",&n);
    memset(vis,0,sizeof(vis));
    ll mm = 0;
    for(int i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
        if(a[i]>mm)
        {
            mm = a[i];
        }
        else
        {
            vis[i] = 1;
        }
    }
    mm = INF;
    for(int i=n-1;i>=0;i--)
    {
        if(a[i]<mm)
            mm = a[i];
        else
            vis[i] = 1;
    }
    int ans = 0;
    for(int i=0;i<n;i++)
    {
        if(vis[i])ans++;
    }
    cout<<ans<<endl;
}

Double click to view unformatted code.


Back to problem 3867