203072026-01-06 11:54:12BaKamillaBenzinkút üzemeltetés (55)cpp17Elfogadva 55/552ms508 KiB
#include <iostream>

struct kut {
    int tav;
    int haszon;
};
kut t[1001];
int utvonal[1001],db[1001];

void ut(int i) {
    if (utvonal[i] == 0) std::cout << " " << i;
    else {
        ut(utvonal[i]);
        std::cout << " " << i;
    }
}

int main()
{
    int N, K;
    std::cin >> N >> K;
    int legnagyobb = 0;
    int hely = 0;
    for (int i = 1; i <= N; i++)
    {
        std::cin >> t[i].tav >> t[i].haszon;
        int max = t[i].haszon;
        int p = 0;
        for (int j = 1; j < i; j++) {
            if (t[i].tav - t[j].tav >= K && t[i].haszon + t[j].haszon > max) {
                max = t[i].haszon + t[j].haszon;
                p = j;
            }
        }
        t[i].haszon = max;
        utvonal[i] = p;
        if (p > 0) db[i] = db[p] + 1;
        else db[i] = 1;
        if (t[i].haszon > legnagyobb) {
            legnagyobb = t[i].haszon;
            hely = i;
        }
    }
    std::cout << legnagyobb << std::endl << db[hely];
    ut(hely);
}

RészfeladatÖsszpontTesztVerdiktIdőMemória
base55/55
1Elfogadva0/01ms316 KiB
2Elfogadva0/02ms316 KiB
3Elfogadva3/31ms316 KiB
4Elfogadva3/31ms508 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms316 KiB
7Elfogadva3/31ms316 KiB
8Elfogadva3/31ms332 KiB
9Elfogadva3/31ms500 KiB
10Elfogadva3/31ms316 KiB
11Elfogadva3/31ms316 KiB
12Elfogadva3/31ms316 KiB
13Elfogadva4/41ms316 KiB
14Elfogadva4/42ms316 KiB
15Elfogadva5/52ms412 KiB
16Elfogadva6/62ms508 KiB
17Elfogadva6/62ms508 KiB