1531 | 2022. 11. 22 12:28:54 | TomaSajt | Fasor (40) | cpp14 | Elfogadva 40/40 | 28ms | 8868 KiB |
#include <bits/stdc++.h>
#define speed ios::sync_with_stdio(0);cin.tie(0)
using namespace std;
int main() {
speed;
int n, k;
cin >> n >> k;
int l = 2 * k + 1;
int m = n + 2 * k;
vector<int> v(m, INT_MIN);
for (int i = k; i < n + k; i++) cin >> v[i];
deque<int> dq;
vector<int> res(m - l + 1);
for (int i = 0; i < m; i++) {
while (!dq.empty() && i - dq.front() >= l) dq.pop_front();
while (!dq.empty() && v[dq.back()] <= v[i]) dq.pop_back();
dq.push_back(i);
if (i - l + 1 >= 0) res[i - l + 1] = v[dq.front()];
}
for (int i = 0; i < n; i++) {
if (v[i + k] >= res[i]) {
cout << i + 1;
return 0;
}
}
cout << "-1";
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 40/40 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1828 KiB | |||
2 | Elfogadva | 0/0 | 3ms | 2228 KiB | |||
3 | Elfogadva | 2/2 | 2ms | 2224 KiB | |||
4 | Elfogadva | 2/2 | 2ms | 2424 KiB | |||
5 | Elfogadva | 2/2 | 2ms | 2632 KiB | |||
6 | Elfogadva | 2/2 | 2ms | 2980 KiB | |||
7 | Elfogadva | 2/2 | 2ms | 3060 KiB | |||
8 | Elfogadva | 2/2 | 2ms | 3152 KiB | |||
9 | Elfogadva | 2/2 | 3ms | 3472 KiB | |||
10 | Elfogadva | 2/2 | 3ms | 3424 KiB | |||
11 | Elfogadva | 2/2 | 3ms | 3828 KiB | |||
12 | Elfogadva | 2/2 | 3ms | 3752 KiB | |||
13 | Elfogadva | 2/2 | 14ms | 5604 KiB | |||
14 | Elfogadva | 2/2 | 17ms | 8260 KiB | |||
15 | Elfogadva | 2/2 | 23ms | 8384 KiB | |||
16 | Elfogadva | 2/2 | 25ms | 7944 KiB | |||
17 | Elfogadva | 2/2 | 27ms | 8592 KiB | |||
18 | Elfogadva | 2/2 | 26ms | 7648 KiB | |||
19 | Elfogadva | 2/2 | 25ms | 7240 KiB | |||
20 | Elfogadva | 2/2 | 10ms | 6692 KiB | |||
21 | Elfogadva | 2/2 | 24ms | 8868 KiB | |||
22 | Elfogadva | 2/2 | 28ms | 8124 KiB |