제출 #1184076

#제출 시각아이디문제언어결과실행 시간메모리
1184076AvianshSequence (APIO23_sequence)C++20
7 / 100
38 ms10056 KiB
#include "sequence.h" #include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace __gnu_pbds; using namespace std; typedef tree<array<int,2>,null_type,less<array<int,2>>,rb_tree_tag,tree_order_statistics_node_update> ordered_set; int sequence(int n, vector<int> arr) { int ans = 0; array<int,2>locs[n]; array<int,2>def = {n+10,-1}; fill(locs,locs+n,def); int cns[n]; fill(cns,cns+n,0); int cur = 0; for(int i = 0;i<n;i++){ arr[i]--; cns[arr[i]]++; locs[arr[i]][0]=min(locs[arr[i]][0],i); locs[arr[i]][1]=max(locs[arr[i]][1],i); if(i){ if(arr[i]!=arr[i-1]){ cur=0; } } cur++; ans=max(ans,cur); } for(int i = 0;i<n;i++){ int bigger = (locs[i][1]-locs[i][0]+1)-cns[i]; if(bigger<(n+2)/2){ ans=max(ans,cns[i]); } } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...