Задание 17. Информатика. ЕГЭ. Поляков-4274

Просмотры: 190
Изменено: 23 ноября 2024

(В. Шубинкин) В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество локальных минимумов в этой последовательности, затем максимальный среди этих элементов. Под локальным минимумом подразумевается элемент последовательности, меньший двух соседних элементов. Гарантируется наличие хотя бы двух локальных минимумов. Например, в последовательности \(10; \, 4; \, 7; \, -2; \, -10; \, 12; \, 3\) два локальных минимума \((4\) и \(-10)\), поэтому правильным ответом для данного примера будет пара чисел \(2\) и \(4\).

Файл с данными

Решение:

C++


#include<iostream>
#include<fstream>
#include<vector>

using namespace std;

int32_t main() {
    ifstream in("17-1.txt");
    vector<int> v;
    int loc_min = 0, max_min = -100000;

    while(!in.eof()) {
        int t;
        in >> t;
        v.push_back(t);
    }

    for (int i = 1; i < v.size() - 1; i++) {
        if (v[i] < v[i-1] && v[i] < v[i+1]) {
            loc_min++;
            max_min = max(max_min, v[i]);
        }
    }

    cout << loc_min << " " << max_min << '\n';

}

Ответ: \(3316 \,\, 8125\)