Загрузка данных


#include <iostream>
#include <vector>

using namespace std;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int n;
    if (!(cin >> n)) return 0;

    vector<int> a(n);
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }

    vector<vector<int>> table;
    int max_repeats = 1;

    for (int i = 0; i < n; i++) {
        int current_bird = a[i];
        int current_bird_minutes = 1;

        while (table.size() > 0 && table[table.size() - 1][0] > current_bird) {
            table[table.size() - 1][1] = table[table.size() - 1][1] + 1;
            
            if (table[table.size() - 1][1] > max_repeats) {
                max_repeats = table[table.size() - 1][1];
            }

            if (table.size() > 1 && table[table.size() - 2][0] > current_bird) {
                table.pop_back();
            } else {
                break;
            }
        }

        vector<int> new_row = {current_bird, current_bird_minutes};
        table.push_back(new_row);
    }

    long long total_minutes = 0;
    for (int i = 0; i < table.size(); i++) {
        total_minutes = total_minutes + table[i][1];
    }

    cout << total_minutes << " " << max_repeats << "\n";

    return 0;
}