#include <bits/stdc++.h>
using namespace std;
using un = long long;
using vuc = vector<un>;
using vol = vector<bool>;
#define REP(i, a, b) for (un i = (un)a ; i < (un)b; i++)
#define FEAC(i, a) for (auto&& i : a)
#define vec vector
#define ALL(x) (x).begin(), (x).end()
int main(){
un N, D; cin >> N >> D;
vuc A(N); FEAC(a, A) cin >> a;
if (D != 1) return 0;
un ret = 0;
stack<un> zasoba;
for(un i = N-1; i >= 0; i--){
un val = A[i];
while((not zasoba.empty()) and (val >= zasoba.top())) zasoba.pop();
zasoba.emplace(val);
ret = max(ret, (un)zasoba.size());
}
cout << ret << endl;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |