84872024-01-17 21:06:37kukkermanTűzijátékcpp17Elfogadva 50/5017ms10828 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ÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1824 KiB
2Elfogadva0/017ms3948 KiB
3Elfogadva2/23ms3136 KiB
4Elfogadva2/23ms3312 KiB
5Elfogadva2/23ms3528 KiB
6Elfogadva2/23ms3696 KiB
7Elfogadva2/23ms3908 KiB
8Elfogadva2/23ms4128 KiB
9Elfogadva2/23ms4508 KiB
10Elfogadva2/24ms4788 KiB
11Elfogadva2/24ms4968 KiB
12Elfogadva2/24ms5056 KiB
13Elfogadva2/24ms5436 KiB
14Elfogadva2/24ms5688 KiB
15Elfogadva3/34ms5672 KiB
16Elfogadva3/37ms6236 KiB
17Elfogadva3/38ms6552 KiB
18Elfogadva3/38ms7212 KiB
19Elfogadva3/317ms8632 KiB
20Elfogadva3/317ms9364 KiB
21Elfogadva4/417ms10188 KiB
22Elfogadva4/416ms10828 KiB