8860 2024. 02. 02 16:17:00 zeytonx Tűzijáték cpp17 Elfogadva 50/50 17ms 10736 KiB
#include <bits/stdc++.h>

using namespace std;

#define ll long long
#define endl "\n"
#define pll pair<ll,ll>
#define vll vector<ll>
#define mll map<ll,ll>
#define fs first
#define sc second

const ll MOD = 1e9+7;

void solve()
{
	ll n, s, t;
	cin >> n >> s >> t;
	vector<ll> v(n);
	vector<ll> ans;
	for(ll i = 0; i < n; i++)
		cin >> v[i];
	ans.push_back(s-1);
	ll last_pos = s-1;
	for(ll i = s-1; i < n; i++)
	{
		if(last_pos != -1)
		{
			if(v[last_pos] + t <= v[i])
			{
				ans.push_back(i);
				last_pos = i;
			}
		}
	}
	last_pos = s-1;
	for(ll i = s-1; i >= 0; i--)
	{
		if(last_pos != -1)
		{
			if(v[last_pos] - t >= v[i])
			{
				ans.push_back(i);
				last_pos = i;
			}
		}
	}

	sort(ans.begin(), ans.end());
	cout << ans.size() << endl;
	for(ll i : ans)
		cout << i+1 << " ";
}

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);
    ll t = 1;
    //cin >> t;
    while(t--)
        solve();
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1824 KiB
2 Elfogadva 0/0 17ms 4872 KiB
3 Elfogadva 2/2 3ms 3048 KiB
4 Elfogadva 2/2 3ms 3260 KiB
5 Elfogadva 2/2 3ms 3480 KiB
6 Elfogadva 2/2 3ms 3700 KiB
7 Elfogadva 2/2 3ms 3672 KiB
8 Elfogadva 2/2 3ms 3680 KiB
9 Elfogadva 2/2 3ms 3964 KiB
10 Elfogadva 2/2 4ms 4048 KiB
11 Elfogadva 2/2 4ms 4268 KiB
12 Elfogadva 2/2 4ms 4724 KiB
13 Elfogadva 2/2 4ms 4736 KiB
14 Elfogadva 2/2 4ms 4868 KiB
15 Elfogadva 3/3 4ms 5144 KiB
16 Elfogadva 3/3 7ms 5412 KiB
17 Elfogadva 3/3 8ms 5988 KiB
18 Elfogadva 3/3 8ms 6708 KiB
19 Elfogadva 3/3 17ms 8732 KiB
20 Elfogadva 3/3 17ms 9420 KiB
21 Elfogadva 4/4 17ms 10420 KiB
22 Elfogadva 4/4 17ms 10736 KiB