# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1168767 | rayan_bd | Sequence (APIO23_sequence) | C++20 | 2094 ms | 59124 KiB |
#include <bits/stdc++.h>
using namespace std;
const double INF = 5e18;
const int mxN = 5e5+100;
#define fi first
#define se second
#define all(v) v.begin(), v.end()
int sequence(int N,vector<int> A){
map<int,pair<int,int>> mp;
map<int,int> frq;
for(int i=0;i<N;++i){
if(!mp.count(A[i])) mp[A[i]].fi=i;
mp[A[i]].se=i;
++frq[A[i]];
}
int cnt=1,ans=1;
for(int i=1;i<N;++i){
if(A[i]==A[i-1]) ans=max(ans,++cnt);
else cnt=1;
}
for(auto it:mp){
int len=it.se.se-it.se.fi+1;
while(len>=1){
if(len&1){
if(frq[it.fi]>=((len+1)/2)) ans=max(ans,frq[it.fi]);
}else{
if(frq[it.fi]>=(len/2)) ans=max(ans,frq[it.fi]);
# | 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... |