#include "bits/stdc++.h"
#include "sequence.h"
// #include "grader.cpp"
using namespace std;
#define SZ(s) (int)s.size()
map <int, int> vis;
int sequence(int n, vector<int> a) {
int ans = 0;
for(int i = 0; i < n; i++) {
vis.clear();
multiset <int> s, s1;
for(int j = i; j < n; j++) {
s.insert(a[j]);
vis[a[j]]++;
while((SZ(s) and SZ(s1) and *s.rbegin() > *s1.begin()) or (!SZ(s1))) {
s1.insert(*s.rbegin());
s.erase(--s.end());
}
while(SZ(s) < SZ(s1)) {
s.insert(*s1.begin());
s1.erase(s1.begin());
}
while(SZ(s) - 1 >= SZ(s1) + 1) {
s1.insert(*s.rbegin());
s.erase(--s.end());
}
ans = max(ans, vis[*s.rbegin()]);
if(SZ(s) == SZ(s1)) ans = max(ans, vis[*s1.begin()]);
}
}
return ans;
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |