Increasing Decresasing Sequence

Below is my code:-
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
long prev, curr, diff;
int cnt = 1;
bool isValid = true;
bool goingUp = false;
cin>>prev;
while(cnt<n)
{
cin>>curr;
diff = curr - prev;
if(diff == 0)
{
goingUp = false;
}
else if(diff>0)
{
goingUp = true;
}
else if(goingUp && diff < 0)
{
isValid = false;
}
prev = curr;
cnt++;
}
if(isValid){
cout<<“true”<<endl;
}
else{
cout<<“false”<<endl;
}

return 0;

}

Its failing in test case number 2. Can you please guide me where I am going wrong?

Hey, your code is not working if all the elements are equal. For eg. check for this case
input:
4
4
4
4
4

your code’s output:
true

but the expected output is:
false

ok thank you sir…