Cerinţa
De-a lungul principalei străzi din orașul nostru există n plopi, pentru fiecare cunoscându-se înălțimea. Primarul orașului dorește să știe care este diferența de înălțime maximă între doi plopi învecinați, și câte perechi de plopi învecinați au această diferență de înălțime.
Ajutați-l pe primar să afle răspunsul la întrebare.
Date de intrare
Programul citește de la tastatură numărul de plopi n, iar apoi n numere naturale nenule, separate prin spaţii, reprezentând înălțimile plopilor.
Date de ieşire
Programul afișează pe ecran numerele D și nrp, separate prin exact un spațiu, reprezentând diferența de înălțime maximă între doi plopi învecinați, și câte perechi de plopi învecinați au această diferență de înălțime.
Restricţii şi precizări
2 ≤ n ≤ 1000- înălțimile plopilor vor fi mai mici decât
5000
Exemplu
Date de intrare
7 5 3 7 4 6 2 6
Date de ieșire
4 3
Explicație
S-au citit înălțimile a 7 plopi. Diferența maximă de înălțime este 4, și sunt 3 perechi de plopi învecinați care au această diferență de înălțime, și anume cei cu înălțimile 3 7, 6 2 și 2 6.
#include <bits/stdc++.h>
using namespace std;
int main ()
{
int n,max=0,cnt=0;
cin >> n;
int a[1002];
for (int i = 1 ; i <= n; ++i)
{
cin >> a[i];
a[0]=a[1];
if (a[i]-a[i-1] < 0)
{
if (a[i-1]-a[i]> max)
max=a[i-1]-a[i];
}
else
{
if (a[i]-a[i-1]>max)
max=a[i]-a[i-1];
}
}
for (int i = 1 ; i <= n; ++i)
{
if (a[i]-a[i-1] < 0)
{
if (a[i-1]-a[i]== max)
cnt++;
}
else
{
if (a[i]-a[i-1]==max)
cnt++;
}
}
cout << max << ' ' << cnt;
}