Stock span , one test case failing

#include
#include
using namespace std;

int main()
{

int n;
cin>>n;
int a[n];
for(int i=0;i<n;i++)
{
	cin>>a[i];
}
stack<int> s;
int stock=0;
if(n==1)
{
	cout<<"1 ";
}else{
	for(int i=0;i<n;i++)
{
	if(i==0)
	{
		s.push(i);
		stock++;
		cout<<stock<<" ";
	}
	else
	{
		if(a[i]>=a[s.top()])
		{
			s.push(i);
			stock++;
			cout<<stock<<" ";
		}
		else
		{
			while(!s.empty())
			{
				s.pop();
			}
			s.push(i);
			stock=1;
			cout<<stock<<" ";
			
		}
	}
}
}

cout<<"END";
return 0;

}