#include "bits/stdc++.h" using namespace std; constexpr int MAX_DL = 50'007; int main(){ int dlugosc, wysokosci[MAX_DL], wynik_sprawdzany = 0, wynik_optymalny = 0; cin >> dlugosc; for(int i = 0; i < dlugosc; i++) cin >> wysokosci[i]; for(int i = 0; i < dlugosc - 1; i++){ if((wysokosci[i] > wysokosci[i + 1])^(i % 2)) continue; wynik_sprawdzany++, i++; } wynik_optymalny = wynik_sprawdzany, wynik_sprawdzany = 0; for(int i = 0; i < dlugosc - 1; i++){ if((wysokosci[i] < wysokosci[i + 1])^(i % 2)) continue; wynik_sprawdzany++, i++; } wynik_optymalny = min(wynik_optymalny, wynik_sprawdzany); cout << wynik_optymalny; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | #include "bits/stdc++.h" using namespace std; constexpr int MAX_DL = 50'007; int main(){ int dlugosc, wysokosci[MAX_DL], wynik_sprawdzany = 0, wynik_optymalny = 0; cin >> dlugosc; for(int i = 0; i < dlugosc; i++) cin >> wysokosci[i]; for(int i = 0; i < dlugosc - 1; i++){ if((wysokosci[i] > wysokosci[i + 1])^(i % 2)) continue; wynik_sprawdzany++, i++; } wynik_optymalny = wynik_sprawdzany, wynik_sprawdzany = 0; for(int i = 0; i < dlugosc - 1; i++){ if((wysokosci[i] < wysokosci[i + 1])^(i % 2)) continue; wynik_sprawdzany++, i++; } wynik_optymalny = min(wynik_optymalny, wynik_sprawdzany); cout << wynik_optymalny; } |