#include <bits/stdc++.h>
using namespace std;
int GetBestPosition(int n, int c, int r, int *k, int *s, int *e){
pair<int, int> best = {-1, 0};
for(int i=0; i<n; i++){
vector<int> cur_k;
for(int j=0; j<i; j++) cur_k.push_back(k[j]);
cur_k.push_back(r);
for(int j=i; j<n-1; j++) cur_k.push_back(k[j]);
int ans = 0;
for(int j=0; j<c; j++){
int max_r = 0;
for(int l=s[j]; l<=e[j]; l++){
max_r = max(max_r, cur_k[l]);
}
if(r == max_r) ans ++;
vector<int> new_k;
for(int l=0; l<s[j]; l++) new_k.push_back(cur_k[l]);
new_k.push_back(max_r);
for(int l=e[j]+1; l<(int) cur_k.size(); l++) new_k.push_back(cur_k[l]);
cur_k = new_k;
}
if(ans > best.first){
best = {ans, i};
} else if(ans == best.first){
if(i < best.second){
best = {ans, i};
}
}
}
return best.second;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |