1826 2022. 12. 04 14:22:50 kdb Tűzijáték cpp11 Elfogadva 50/50 14ms 5080 KiB
#include <iostream>
#include <vector>
#include <map>
#include <deque>
using namespace std;
#define ll long long

ostream& operator<<(ostream& os, vector<int>& input)
{
    for (auto i : input)
    {
        os << i << " ";
    }
    return os;
}

int main()
{
    cin.tie(nullptr);
    cout.tie(nullptr);
    ios_base::sync_with_stdio(false);
    int n, s, t;
    cin >> n >> s >> t;
    vector<int>vec(n);
    deque<int>m;
    for (size_t i = 0; i < n; i++) cin >> vec[i];
    int a = vec[s - 1];
    m.push_back(s);
    for (int i = s-1; i >= 0; i--)
    {
        if (i>=0 && a - t >= vec[i])
        {
            a = vec[i];
            m.push_front(i + 1);
        }
    }
    a = vec[s - 1];
    for (size_t i = s; i < n; i++)
    {
        if (a + t <= vec[i])
        {
            a = vec[i];
            m.push_back(i + 1);
        }
    }
    cout << m.size() << endl;
    while (!m.empty())
    {
        cout << m.front() << " ";
        m.pop_front();
    }
    cout << endl;
    return 0;
}
/*
6 4 100
0 70 110 210 230 500
*/
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1828 KiB
2 Elfogadva 0/0 14ms 2872 KiB
3 Elfogadva 2/2 2ms 2096 KiB
4 Elfogadva 2/2 2ms 2332 KiB
5 Elfogadva 2/2 2ms 2448 KiB
6 Elfogadva 2/2 2ms 2660 KiB
7 Elfogadva 2/2 2ms 2860 KiB
8 Elfogadva 2/2 2ms 3088 KiB
9 Elfogadva 2/2 3ms 3188 KiB
10 Elfogadva 2/2 3ms 3260 KiB
11 Elfogadva 2/2 3ms 3264 KiB
12 Elfogadva 2/2 4ms 3476 KiB
13 Elfogadva 2/2 4ms 3424 KiB
14 Elfogadva 2/2 4ms 3680 KiB
15 Elfogadva 3/3 4ms 3664 KiB
16 Elfogadva 3/3 6ms 3916 KiB
17 Elfogadva 3/3 7ms 3892 KiB
18 Elfogadva 3/3 8ms 4156 KiB
19 Elfogadva 3/3 14ms 4872 KiB
20 Elfogadva 3/3 14ms 4928 KiB
21 Elfogadva 4/4 14ms 5080 KiB
22 Elfogadva 4/4 14ms 5024 KiB