8487 2024. 01. 17 21:06:37 kukkerman Tűzijáték cpp17 Elfogadva 50/50 17ms 10828 KiB
#include <iostream>
#include <vector>
#include <cstdint>

using Tavolsagok = std::vector<int>;

void beolvas(std::istream &be, int &s, int &t, Tavolsagok &telepulesek) {
    int n;
    be >> n >> s >> t;

    telepulesek.resize(n);
    for (auto &tt : telepulesek) {
        be >> tt;
    }
}

void feldolgoz(int s, int t, const Tavolsagok &telepulesek) {
    const auto n = static_cast<int>(telepulesek.size());
    const auto telephely_poz = telepulesek[s - 1];

    std::vector<int> tuzijatekok;

    auto vege = 0;
    for (auto i = 0; telepulesek[i] + t <= telephely_poz; i++) {
        if (vege <= telepulesek[i]) {
            tuzijatekok.push_back(i + 1);
            vege = telepulesek[i] + t;
        }
    }

    tuzijatekok.push_back(s);

    vege = telephely_poz + t;
    for (auto i = s; i < n; i++) {
        if (vege <= telepulesek[i]) {
            tuzijatekok.push_back(i + 1);
            vege = telepulesek[i] + t;
        }
    }

    using std::cout;

    cout << tuzijatekok.size() << '\n';
    for (auto tindex : tuzijatekok) {
        cout << tindex << ' ';
    }
    cout << '\n';
}

int main() {
    std::ios_base::sync_with_stdio(false);
    std::cin.tie(nullptr);
    std::cout.tie(nullptr);

    int s;
    int t;
    Tavolsagok telepulesek;
    beolvas(std::cin, s, t, telepulesek);

    feldolgoz(s, t, telepulesek);

    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 3948 KiB
3 Elfogadva 2/2 3ms 3136 KiB
4 Elfogadva 2/2 3ms 3312 KiB
5 Elfogadva 2/2 3ms 3528 KiB
6 Elfogadva 2/2 3ms 3696 KiB
7 Elfogadva 2/2 3ms 3908 KiB
8 Elfogadva 2/2 3ms 4128 KiB
9 Elfogadva 2/2 3ms 4508 KiB
10 Elfogadva 2/2 4ms 4788 KiB
11 Elfogadva 2/2 4ms 4968 KiB
12 Elfogadva 2/2 4ms 5056 KiB
13 Elfogadva 2/2 4ms 5436 KiB
14 Elfogadva 2/2 4ms 5688 KiB
15 Elfogadva 3/3 4ms 5672 KiB
16 Elfogadva 3/3 7ms 6236 KiB
17 Elfogadva 3/3 8ms 6552 KiB
18 Elfogadva 3/3 8ms 7212 KiB
19 Elfogadva 3/3 17ms 8632 KiB
20 Elfogadva 3/3 17ms 9364 KiB
21 Elfogadva 4/4 17ms 10188 KiB
22 Elfogadva 4/4 16ms 10828 KiB