229172026-01-16 08:49:22Leventusz09Városnézéscpp17Hibás válasz 0/80565ms262144 KiB
#include <iostream>
#include <vector>
#include <stdint.h>

using namespace std;

struct Ter {
    vector<uint32_t> et;
    //vector<uint32_t> ef;
    uint32_t n;  // látványosságok száma
    uint32_t an = 0; // sok látványosság
    uint32_t ob; // előző elem
};


int main(){
    Ter terek[20'000];
    uint32_t N, M;
    cin >> N >> M;

    for(uint32_t i=0; i<N; i++) cin >> terek[i].n;

    for(uint32_t i=0; i<M; i++){
        uint32_t t1, t2;
        cin >> t1 >> t2;
        terek[t1-1].et.push_back(t2-1);
        //terek[t2-1].ef.push_back(t1-1);
    }

    terek[0].an = terek[0].n;
    vector<uint32_t> q;
    q.push_back(0);
    uint32_t si= 0;
    while(si < N-1){
        for(uint32_t&x:terek[q[si]].et){
            q.push_back(x);
            if(terek[x].an < terek[q[si]].an + terek[x].n) {
                terek[x].an = terek[q[si]].an + terek[x].n;
                terek[x].ob = q[si];
            }
        }
        si++;
    }

    cout << terek[q[q.size() - 1]].an << endl;
    vector<uint32_t> o1;
    for(uint32_t i=q[q.size() - 1]; i != 0; i = terek[i].ob) o1.push_back(i+1);
    cout << 1 << " ";
    for(int32_t i = o1.size()-1; i >= 0; i--) cout << o1[i] << " ";
    cout << endl;

}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva2ms1260 KiB
subtask20/20
2Elfogadva2ms1072 KiB
3Elfogadva2ms1316 KiB
4Hibás válasz2ms1320 KiB
5Hibás válasz6ms1332 KiB
6Hibás válasz3ms1180 KiB
7Hibás válasz8ms1332 KiB
8Hibás válasz8ms1220 KiB
9Elfogadva2ms1076 KiB
10Hibás válasz14ms1528 KiB
11Hibás válasz2ms1100 KiB
12Elfogadva1ms1040 KiB
subtask30/25
13Elfogadva2ms1260 KiB
14Elfogadva2ms1268 KiB
15Elfogadva2ms1076 KiB
16Hibás válasz2ms1076 KiB
17Futási hiba541ms262144 KiB
18Hibás válasz2ms1076 KiB
19Futási hiba430ms262144 KiB
20Futási hiba2ms1180 KiB
21Futási hiba2ms1076 KiB
22Hibás válasz4ms1076 KiB
23Futási hiba3ms1076 KiB
24Hibás válasz4ms1076 KiB
25Hibás válasz3ms1076 KiB
26Futási hiba3ms1192 KiB
27Hibás válasz4ms1092 KiB
28Hibás válasz26ms1660 KiB
29Hibás válasz6ms1076 KiB
30Hibás válasz28ms1544 KiB
31Futási hiba446ms262144 KiB
32Futási hiba565ms262144 KiB
33Futási hiba9ms1076 KiB
subtask40/20
34Elfogadva2ms1080 KiB
35Hibás válasz2ms1076 KiB
36Elfogadva2ms1076 KiB
37Hibás válasz2ms1076 KiB
38Hibás válasz2ms1076 KiB
39Futási hiba544ms262144 KiB
40Hibás válasz2ms1076 KiB
41Futási hiba432ms262144 KiB
42Futási hiba3ms1076 KiB
43Futási hiba2ms1268 KiB
44Hibás válasz2ms1076 KiB
45Futási hiba428ms262144 KiB
46Hibás válasz2ms1076 KiB
47Hibás válasz2ms1076 KiB
48Futási hiba2ms1076 KiB
49Hibás válasz2ms1076 KiB
50Elfogadva2ms1076 KiB
51Hibás válasz2ms1268 KiB
52Hibás válasz1ms1076 KiB
53Hibás válasz1ms1076 KiB
54Elfogadva2ms1076 KiB
55Hibás válasz2ms1076 KiB
56Hibás válasz2ms1100 KiB
57Hibás válasz2ms1040 KiB
58Hibás válasz2ms1076 KiB
59Hibás válasz2ms1076 KiB
60Elfogadva1ms1076 KiB
61Hibás válasz2ms1076 KiB
62Hibás válasz2ms1076 KiB
63Hibás válasz2ms1172 KiB
64Hibás válasz2ms1076 KiB
65Hibás válasz2ms1076 KiB
66Hibás válasz2ms1076 KiB
subtask50/15
67Elfogadva2ms1080 KiB
68Elfogadva2ms1072 KiB
69Elfogadva2ms1316 KiB
70Hibás válasz2ms1320 KiB
71Hibás válasz6ms1332 KiB
72Hibás válasz3ms1180 KiB
73Hibás válasz8ms1332 KiB
74Hibás válasz8ms1220 KiB
75Elfogadva2ms1076 KiB
76Hibás válasz14ms1528 KiB
77Hibás válasz2ms1100 KiB
78Elfogadva1ms1040 KiB
79Elfogadva2ms1260 KiB
80Elfogadva2ms1268 KiB
81Elfogadva2ms1076 KiB
82Hibás válasz2ms1076 KiB
83Futási hiba541ms262144 KiB
84Hibás válasz2ms1076 KiB
85Futási hiba430ms262144 KiB
86Futási hiba2ms1180 KiB
87Futási hiba2ms1076 KiB
88Hibás válasz4ms1076 KiB
89Futási hiba3ms1076 KiB
90Hibás válasz4ms1076 KiB
91Hibás válasz3ms1076 KiB
92Futási hiba3ms1192 KiB
93Hibás válasz4ms1092 KiB
94Hibás válasz26ms1660 KiB
95Hibás válasz6ms1076 KiB
96Hibás válasz28ms1544 KiB
97Futási hiba446ms262144 KiB
98Futási hiba565ms262144 KiB
99Futási hiba9ms1076 KiB
100Hibás válasz2ms1076 KiB
101Elfogadva2ms1076 KiB
102Hibás válasz2ms1076 KiB
103Hibás válasz2ms1076 KiB
104Futási hiba544ms262144 KiB
105Hibás válasz2ms1076 KiB
106Futási hiba432ms262144 KiB
107Futási hiba3ms1076 KiB
108Futási hiba2ms1268 KiB
109Hibás válasz2ms1076 KiB
110Futási hiba428ms262144 KiB
111Hibás válasz2ms1076 KiB
112Hibás válasz2ms1076 KiB
113Futási hiba2ms1076 KiB
114Hibás válasz2ms1076 KiB
115Elfogadva2ms1076 KiB
116Hibás válasz2ms1268 KiB
117Hibás válasz1ms1076 KiB
118Hibás válasz1ms1076 KiB
119Elfogadva2ms1076 KiB
120Hibás válasz2ms1076 KiB
121Hibás válasz2ms1100 KiB
122Hibás válasz2ms1040 KiB
123Hibás válasz2ms1076 KiB
124Hibás válasz2ms1076 KiB
125Elfogadva1ms1076 KiB
126Hibás válasz2ms1076 KiB
127Hibás válasz2ms1076 KiB
128Hibás válasz2ms1172 KiB
129Hibás válasz2ms1076 KiB
130Hibás válasz2ms1076 KiB
131Hibás válasz2ms1076 KiB
132Hibás válasz4ms1076 KiB
133Futási hiba3ms1368 KiB
134Hibás válasz4ms1032 KiB
135Hibás válasz3ms1080 KiB
136Hibás válasz3ms1200 KiB
137Hibás válasz3ms1192 KiB
138Hibás válasz4ms1076 KiB
139Hibás válasz3ms1296 KiB
140Hibás válasz6ms1332 KiB
141Hibás válasz3ms1264 KiB
142Hibás válasz8ms1332 KiB
143Hibás válasz9ms1332 KiB
144Hibás válasz12ms1576 KiB
145Hibás válasz8ms1440 KiB
146Hibás válasz20ms1912 KiB
147Hibás válasz17ms1532 KiB
148Hibás válasz16ms1500 KiB
149Hibás válasz10ms1464 KiB