254352026-02-20 07:46:13SzeredaiNatanaelFasor (40)cpp17Elfogadva 40/4027ms1588 KiB
#include <iostream>
#include <vector>
#include <deque>

using namespace std;

int main()
{
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	int n, k; cin >> n >> k;
	vector<int> v(n + 1);
	for (int i = 1; i <= n; ++i)
		cin >> v[i];

	deque<int> dq;
	
	int r = 0, l, nr;
	for (int i = 1; i <= n; ++i) {
		l = max(1, i - k);
		nr = min(n, i + k);

		while (r < nr) {
			++r;

			while (!dq.empty() && v[dq.back()] < v[r]) {
				dq.pop_back();
			}
			dq.push_back(r);
		}

		while (!dq.empty() && dq.front() < l) {
			dq.pop_front();
		}

		if (!dq.empty() && v[dq.front()] == v[i]) {
			cout << i << "\n";
			return 0;
		}
	}

	cout << "-1\n";
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/01ms316 KiB
2Elfogadva0/02ms316 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva2/21ms508 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva2/22ms316 KiB
10Elfogadva2/22ms396 KiB
11Elfogadva2/22ms316 KiB
12Elfogadva2/22ms316 KiB
13Elfogadva2/214ms828 KiB
14Elfogadva2/213ms1088 KiB
15Elfogadva2/221ms1332 KiB
16Elfogadva2/224ms1224 KiB
17Elfogadva2/227ms1472 KiB
18Elfogadva2/226ms1220 KiB
19Elfogadva2/226ms1220 KiB
20Elfogadva2/29ms820 KiB
21Elfogadva2/223ms1588 KiB
22Elfogadva2/227ms1076 KiB