#include "sequence.h"
#include <bits/stdc++.h>
using namespace std;
const int N = 5e5 + 5;
int seg[N * 4];
void Build(int l, int r, int pos)
{
seg[pos] = 0;
if(l == r) return;
int mid = (l + r) / 2;
Build(l, mid, pos * 2);
Build(mid + 1, r, pos * 2 + 1);
}
void Update(int l, int r, int pos, int qpos, int qval)
{
seg[pos] += qval;
if(l == r) return;
int mid = (l + r) / 2;
if(qpos <= mid)
{
Update(l, mid, pos * 2, qpos, qval);
}
else
{
Update(mid + 1, r, pos * 2 + 1, qpos, qval);
}
}
int Query(int l, int r, int pos, int qval)
{
if(l == r)
{
return seg[pos];
}
int mid = (l + r) / 2;
if(seg[pos * 2] >= qval)
{
return Query(l, mid, pos * 2, qval);
}
else
{
return Query(mid + 1, r, pos * 2 + 1, qval - seg[pos * 2]);
}
}
int sequence(int n, vector<int> a)
{
int ans = 0;
for(int i = 0; i < n; i++)
{
Build(1, n, 1);
for(int j = i; j < n; j++)
{
Update(1, n, 1, a[j], 1);
int len = j - i + 1;
int median = (len + 1) / 2;
ans = max(ans, Query(1, n, 1, median));
median = (len + 2) / 2;
ans = max(ans, Query(1, n, 1, median));
}
}
return ans;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
212 KB |
Output is correct |
2 |
Correct |
0 ms |
212 KB |
Output is correct |
3 |
Correct |
0 ms |
212 KB |
Output is correct |
4 |
Correct |
1 ms |
212 KB |
Output is correct |
5 |
Correct |
1 ms |
212 KB |
Output is correct |
6 |
Correct |
1 ms |
212 KB |
Output is correct |
7 |
Correct |
1 ms |
212 KB |
Output is correct |
8 |
Correct |
1 ms |
212 KB |
Output is correct |
9 |
Correct |
1 ms |
212 KB |
Output is correct |
10 |
Correct |
1 ms |
212 KB |
Output is correct |
11 |
Correct |
1 ms |
212 KB |
Output is correct |
12 |
Correct |
1 ms |
212 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
212 KB |
Output is correct |
2 |
Correct |
0 ms |
212 KB |
Output is correct |
3 |
Correct |
0 ms |
212 KB |
Output is correct |
4 |
Correct |
1 ms |
212 KB |
Output is correct |
5 |
Correct |
1 ms |
212 KB |
Output is correct |
6 |
Correct |
1 ms |
212 KB |
Output is correct |
7 |
Correct |
1 ms |
212 KB |
Output is correct |
8 |
Correct |
1 ms |
212 KB |
Output is correct |
9 |
Correct |
1 ms |
212 KB |
Output is correct |
10 |
Correct |
1 ms |
212 KB |
Output is correct |
11 |
Correct |
1 ms |
212 KB |
Output is correct |
12 |
Correct |
1 ms |
212 KB |
Output is correct |
13 |
Correct |
243 ms |
280 KB |
Output is correct |
14 |
Correct |
224 ms |
212 KB |
Output is correct |
15 |
Correct |
140 ms |
312 KB |
Output is correct |
16 |
Correct |
160 ms |
332 KB |
Output is correct |
17 |
Correct |
117 ms |
316 KB |
Output is correct |
18 |
Correct |
248 ms |
312 KB |
Output is correct |
19 |
Correct |
211 ms |
320 KB |
Output is correct |
20 |
Correct |
205 ms |
320 KB |
Output is correct |
21 |
Correct |
220 ms |
328 KB |
Output is correct |
22 |
Correct |
220 ms |
312 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
212 KB |
Output is correct |
2 |
Execution timed out |
2058 ms |
8288 KB |
Time limit exceeded |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
212 KB |
Output is correct |
2 |
Execution timed out |
2070 ms |
8284 KB |
Time limit exceeded |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
2057 ms |
8272 KB |
Time limit exceeded |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
212 KB |
Output is correct |
2 |
Correct |
0 ms |
212 KB |
Output is correct |
3 |
Correct |
0 ms |
212 KB |
Output is correct |
4 |
Correct |
1 ms |
212 KB |
Output is correct |
5 |
Correct |
1 ms |
212 KB |
Output is correct |
6 |
Correct |
1 ms |
212 KB |
Output is correct |
7 |
Correct |
1 ms |
212 KB |
Output is correct |
8 |
Correct |
1 ms |
212 KB |
Output is correct |
9 |
Correct |
1 ms |
212 KB |
Output is correct |
10 |
Correct |
1 ms |
212 KB |
Output is correct |
11 |
Correct |
1 ms |
212 KB |
Output is correct |
12 |
Correct |
1 ms |
212 KB |
Output is correct |
13 |
Correct |
243 ms |
280 KB |
Output is correct |
14 |
Correct |
224 ms |
212 KB |
Output is correct |
15 |
Correct |
140 ms |
312 KB |
Output is correct |
16 |
Correct |
160 ms |
332 KB |
Output is correct |
17 |
Correct |
117 ms |
316 KB |
Output is correct |
18 |
Correct |
248 ms |
312 KB |
Output is correct |
19 |
Correct |
211 ms |
320 KB |
Output is correct |
20 |
Correct |
205 ms |
320 KB |
Output is correct |
21 |
Correct |
220 ms |
328 KB |
Output is correct |
22 |
Correct |
220 ms |
312 KB |
Output is correct |
23 |
Execution timed out |
2058 ms |
1876 KB |
Time limit exceeded |
24 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
212 KB |
Output is correct |
2 |
Correct |
0 ms |
212 KB |
Output is correct |
3 |
Correct |
0 ms |
212 KB |
Output is correct |
4 |
Correct |
1 ms |
212 KB |
Output is correct |
5 |
Correct |
1 ms |
212 KB |
Output is correct |
6 |
Correct |
1 ms |
212 KB |
Output is correct |
7 |
Correct |
1 ms |
212 KB |
Output is correct |
8 |
Correct |
1 ms |
212 KB |
Output is correct |
9 |
Correct |
1 ms |
212 KB |
Output is correct |
10 |
Correct |
1 ms |
212 KB |
Output is correct |
11 |
Correct |
1 ms |
212 KB |
Output is correct |
12 |
Correct |
1 ms |
212 KB |
Output is correct |
13 |
Correct |
243 ms |
280 KB |
Output is correct |
14 |
Correct |
224 ms |
212 KB |
Output is correct |
15 |
Correct |
140 ms |
312 KB |
Output is correct |
16 |
Correct |
160 ms |
332 KB |
Output is correct |
17 |
Correct |
117 ms |
316 KB |
Output is correct |
18 |
Correct |
248 ms |
312 KB |
Output is correct |
19 |
Correct |
211 ms |
320 KB |
Output is correct |
20 |
Correct |
205 ms |
320 KB |
Output is correct |
21 |
Correct |
220 ms |
328 KB |
Output is correct |
22 |
Correct |
220 ms |
312 KB |
Output is correct |
23 |
Execution timed out |
2058 ms |
8288 KB |
Time limit exceeded |
24 |
Halted |
0 ms |
0 KB |
- |