Răspuns :
Salut! Uite solutia oficiala, poate te ajuta:
#include <iostream>
using namespace std;
int main()
{
int a[1001],n,i;
bool cr,de;
cin>>n;
for(i=0;i<n;++i)
cin>>a[i];
cr=de=false;
for(i=0;i<n-1;++i)
if (a[i]==a[i+1])
{
cout<<"NU"; // daca gasim doua elementele egale, nu poate fi munte
return 0;
}
else
if (a[i]>a[i+1])
if (cr)
de=true; // am gasit elemente descrescatoare
else
{
cout<<"NU";// elemente descrescatoare si nu a fost parte crescatoare
return 0; // nu poate fi munte
}
else
if (a[i]<a[i+1])
if (!de)
cr=true; // am gasit elemente crescatoare
else
{
cout<<"NU";// elemente crescatoare dupa parte descrescatoare
return 0; // nu poate fi munte
}
if (cr and de)
cout<<"DA"; // sirul contine atat parte crescatoare cat si descrescatoare
else
cout<<"NU"; // nu are parte descrescatoare
return 0;
}
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Nu ezitați să ne contactați pentru orice întrebare sau dacă aveți nevoie de asistență suplimentară. Vă așteptăm cu drag data viitoare și nu uitați să ne adăugați la favorite!