➤ Problem Link : 599C. Day at the Beach
✅ C++ Solution :
#include<bits/stdc++.h>
using namespace std;
#define ll long long int
int main()
{
int n;
cin>>n;
ll arr[n+1];
ll pos[n+1];
map<ll,int> freq;
for(int i=1;i<=n;i++)
{
cin>>arr[i];
freq[arr[i]]++;
}
auto it = freq.begin();
auto it2 = it;
it2++;
for(;it2!=freq.end();it++,it2++)
{
it2->second+=it->second;
}
for(int i=n;i>=1;i--)
{
pos[i]=freq[arr[i]];
freq[arr[i]]--;
}
int ans=0;
ll mx=0;
for(int i=1;i<=n;i++)
{
mx=max(mx,pos[i]);
if(i==mx)
ans++;
}
cout<<ans;
}
Thank you for your patience reading. If you enjoyed this post, I’d be very grateful if you’d help it spread by emailing it to a friend, or sharing it on Whatsapp or Facebook.
😇Happy Learning!!
