201742026-01-03 19:33:51hunzombiMunkákcpp17Részben helyes 48/8071ms1848 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n, m;
    cin >> n >> m;
    vector<int> prev(n + 1, -1), val(n + 1, 0);

    for (int i=0; i < m; i++) {
        int u, v;
        cin >> u >> v;
        u--;
        if (v > val[u]) {
            val[u] = v;
        }
    }

    int idx = 0;
    if (val[0] > val[1]) {
        val[1] = val[0];
        prev[1] = 0;
    } else {
        idx = 1;
    }


    for (int i=2; i <= n; i++) {
        if (val[i - 1] > val[i - 2] + val[i]) {
            val[i] = val[i - 1];
            prev[i] = i - 1;
        } else {
            val[i] += val[i - 2];
            prev[i] = i - 2;
        }
        if (val[idx] < val[i]) {
            idx = i;
        }
    }

    cout << val[idx] << ' ';

    vector<int> ans(0);

    while (idx > 0) {
        if (prev[idx] != idx + 1) {
            ans.push_back(idx + 1);
        }
        idx = prev[idx];
    }

    cout << ans.size() << '\n';

    sort(ans.begin(), ans.end());

    for (int x : ans) {
        cout << x << ' ';
    }

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Részben helyes1ms508 KiB
2Részben helyes59ms316 KiB
subtask26/10
3Részben helyes1ms512 KiB
4Elfogadva1ms316 KiB
5Részben helyes1ms500 KiB
6Részben helyes1ms316 KiB
7Részben helyes1ms316 KiB
subtask36/10
8Részben helyes1ms316 KiB
9Részben helyes1ms316 KiB
10Részben helyes1ms316 KiB
11Részben helyes1ms316 KiB
12Részben helyes1ms380 KiB
subtask46/10
13Részben helyes1ms512 KiB
14Elfogadva1ms316 KiB
15Részben helyes1ms500 KiB
16Részben helyes1ms316 KiB
17Részben helyes1ms316 KiB
18Részben helyes1ms316 KiB
19Részben helyes1ms316 KiB
20Részben helyes1ms316 KiB
21Részben helyes1ms316 KiB
22Részben helyes1ms316 KiB
subtask56/10
23Részben helyes1ms316 KiB
24Részben helyes1ms316 KiB
25Részben helyes1ms316 KiB
26Részben helyes1ms316 KiB
27Részben helyes1ms380 KiB
28Részben helyes1ms316 KiB
29Részben helyes1ms316 KiB
30Részben helyes1ms316 KiB
31Részben helyes1ms316 KiB
32Részben helyes1ms316 KiB
subtask66/10
33Részben helyes1ms512 KiB
34Elfogadva1ms316 KiB
35Részben helyes1ms500 KiB
36Részben helyes1ms316 KiB
37Részben helyes1ms316 KiB
38Részben helyes1ms316 KiB
39Részben helyes1ms316 KiB
40Részben helyes1ms316 KiB
41Részben helyes1ms316 KiB
42Részben helyes1ms380 KiB
43Részben helyes1ms316 KiB
44Részben helyes1ms316 KiB
45Részben helyes1ms316 KiB
46Részben helyes1ms316 KiB
47Részben helyes1ms316 KiB
48Részben helyes1ms316 KiB
49Részben helyes1ms316 KiB
50Részben helyes1ms316 KiB
51Részben helyes1ms316 KiB
52Részben helyes1ms316 KiB
53Részben helyes2ms316 KiB
54Részben helyes1ms316 KiB
55Részben helyes2ms316 KiB
56Részben helyes2ms316 KiB
57Részben helyes2ms316 KiB
subtask76/10
58Részben helyes1ms512 KiB
59Elfogadva1ms316 KiB
60Részben helyes1ms500 KiB
61Részben helyes1ms316 KiB
62Részben helyes1ms316 KiB
63Részben helyes1ms316 KiB
64Részben helyes1ms316 KiB
65Részben helyes1ms316 KiB
66Részben helyes1ms316 KiB
67Részben helyes1ms380 KiB
68Részben helyes1ms316 KiB
69Részben helyes1ms316 KiB
70Részben helyes1ms316 KiB
71Részben helyes1ms316 KiB
72Részben helyes1ms316 KiB
73Részben helyes1ms316 KiB
74Részben helyes1ms316 KiB
75Részben helyes1ms316 KiB
76Részben helyes1ms316 KiB
77Részben helyes1ms316 KiB
78Részben helyes2ms316 KiB
79Részben helyes1ms316 KiB
80Részben helyes2ms316 KiB
81Részben helyes2ms316 KiB
82Részben helyes2ms316 KiB
83Részben helyes35ms1060 KiB
84Részben helyes35ms1056 KiB
85Részben helyes35ms1080 KiB
86Részben helyes35ms1060 KiB
87Részben helyes35ms1260 KiB
subtask812/20
88Részben helyes1ms512 KiB
89Elfogadva1ms316 KiB
90Részben helyes1ms500 KiB
91Részben helyes1ms316 KiB
92Részben helyes1ms316 KiB
93Részben helyes1ms316 KiB
94Részben helyes1ms316 KiB
95Részben helyes1ms316 KiB
96Részben helyes1ms316 KiB
97Részben helyes1ms380 KiB
98Részben helyes1ms316 KiB
99Részben helyes1ms316 KiB
100Részben helyes1ms316 KiB
101Részben helyes1ms316 KiB
102Részben helyes1ms316 KiB
103Részben helyes1ms316 KiB
104Részben helyes1ms316 KiB
105Részben helyes1ms316 KiB
106Részben helyes1ms316 KiB
107Részben helyes1ms316 KiB
108Részben helyes2ms316 KiB
109Részben helyes1ms316 KiB
110Részben helyes2ms316 KiB
111Részben helyes2ms316 KiB
112Részben helyes2ms316 KiB
113Részben helyes35ms1060 KiB
114Részben helyes35ms1056 KiB
115Részben helyes35ms1080 KiB
116Részben helyes35ms1060 KiB
117Részben helyes35ms1260 KiB
118Részben helyes70ms1724 KiB
119Részben helyes71ms1712 KiB
120Részben helyes71ms1848 KiB
121Részben helyes71ms1712 KiB
122Részben helyes71ms1712 KiB
123Részben helyes70ms1712 KiB
124Részben helyes71ms1716 KiB
125Részben helyes71ms1712 KiB
126Részben helyes71ms1712 KiB
127Részben helyes71ms1848 KiB