#include <bits/stdc++.h>
#include "libmean.h"
using namespace std;
const int N = 103;
int ans[N], ans2[N];
int n;
int main(){
ios_base::sync_with_stdio(false);
cin.tie(0);
n = Init();
for (int i = 1; i <= (n-4); i++){
int tmp = 0, mx = 0, mn = INT_MAX;
int last = 0;
vector <int> take;
take.push_back(0);
while(take.size() < 6){
if (last == n){
break;
}
for (int i = last+1; i <= n; i++){
if (ans[i] == 0){
take.push_back(i);
last = i;
break;
}
}
}
for (int j = 1; j <= 5; j++){
int q[5], ptr = 0;
for (int k = 1; k <= 5; k++){
if (k == j){
continue;
}
ptr++;
q[ptr] = take[k];
}
int w = Meandian(q[1], q[2], q[3], q[4]);
tmp += w;
mx = max(mx, w);
mn = min(mn, w);
}
tmp -= (mx+mn);
int f = tmp - (mx*2), t = tmp - (mn*2), s = tmp - f - t;
for (int j = 1; j <= 5; j++){
int q[5], ptr = 0;
for (int k = 1; k <= 5; k++){
if (k == j){
continue;
}
ptr++;
q[ptr] = take[k];
}
int w = Meandian(q[1], q[2], q[3], q[4]);
if (w != mx && w != mn){
ans[take[j]] = s;
}
}
}
for (int i = 1; i <= n; i++){
if (ans[i] == 0){
ans[i] = -1;
}
ans2[i-1] = ans[i];
}
Solution(ans2);
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
208 KB |
Output is correct |
2 |
Correct |
1 ms |
208 KB |
Output is correct |
3 |
Correct |
1 ms |
208 KB |
Output is correct |
4 |
Correct |
2 ms |
208 KB |
Output is correct |
5 |
Correct |
2 ms |
208 KB |
Output is correct |
6 |
Correct |
3 ms |
208 KB |
Output is correct |
7 |
Correct |
4 ms |
208 KB |
Output is correct |
8 |
Correct |
6 ms |
208 KB |
Output is correct |
9 |
Correct |
10 ms |
208 KB |
Output is correct |
10 |
Correct |
9 ms |
208 KB |
Output is correct |