Pagini recente » Cod sursa (job #3128241) | Cod sursa (job #1886624) | Cod sursa (job #2815679) | Cod sursa (job #3138856) | Cod sursa (job #3241919)
#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;
}