Cod sursa(job #3241919)

Utilizator Allie28Radu Alesia Allie28 Data 5 septembrie 2024 22:59:41
Problema Subsir 2 Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>
#include <iostream>
#include <algorithm>
#include <stack>
#include <queue>
#include <unordered_map>
#include <climits>

using namespace std;

ifstream fin("subsir2.in");
ofstream fout("subsir2.out");

const int LMAX = 2005;

stack<int> s;

int main() {
    int n, i, x;
    fin>>n;
    for (i = 0; i < n; i++) {
        fin>>x;
        while (!s.empty() && s.top() > x) {
            s.pop();
        }
        s.push(x);
    }
    vector<int> ans;
    while (!s.empty()) {
        ans.push_back(s.top());
        s.pop();
    }
    fout<<ans.size()<<endl;
    for (i = ans.size() - 1; i >= 0; i--) {
        fout<<ans[i]<<" ";
    }

    fin.close();
    fout.close();
    return 0;
}