Qonşularından böyük olan#7845

Qonşularından böyük olan (Həll təhlili)

Alqoritm Analizi

massivi giriş rəqəmlərinin ardıcıllığını ehtiva etsin. Massiv elementlərinin nömrələndirilməsi 0-dan başlayır. Massiv rəqəm ehtiva edir. elementi yalnız 1 \leq i \leq n – 1 şərti ödənilərsə iki qonşusu var.

İki qonşusundan böyük olan elementlərin sayını hesablamaq üçün bütün belə üzərindən keçmək lazımdır ki, 1 \leq i \leq n – 1 və iki şərtin yerinə yetirilməsini yoxlamaq: m[i - 1] < m[i] və m[i] > m[i + 1].

Alqoritmin Tətbiqi

İşlək massivi elan et.

int m[101];

Giriş rəqəmlərinin sayını oxu.

scanf("%d", &n);

Giriş massivini oxu.

for (i = 0; i < n; i++)
    scanf("%d", &m[i]);

res dəyişənində iki qonşusundan böyük olan elementlərin sayını hesabla.

res = 0;

Bütün belə üzərindən keç ki, 1 \leq i \leq n – 1 və iki şərtin yerinə yetirilməsini yoxla: m[i - 1] < m[i] və m[i] > m[i + 1].

for (i = 1; i < n - 1; i++)
    if (m[i] > m[i - 1] && m[i] > m[i + 1]) res++;

Cavabı çap et.

printf("%d\n", res);