229432026-01-16 09:23:51Leventusz09Városnézéscpp17Hibás válasz 20/80731ms262144 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 = -1; // 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 < q.size()){
        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[N - 1].an << endl;
    vector<uint32_t> o1;
    for(int32_t i=N - 1; i != 0; i = terek[i].ob){
        o1.push_back(i+1);
        if(i == -1){
            cout << -1 << endl;
            return 0;
        }
    }
    cout << 1 << " ";
    for(int32_t i = o1.size()-1; i >= 0; i--) cout << o1[i] << " "; 
    cout << endl;

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva2ms1076 KiB
subtask220/20
2Elfogadva2ms1076 KiB
3Elfogadva2ms1076 KiB
4Elfogadva2ms1076 KiB
5Elfogadva6ms1336 KiB
6Elfogadva4ms1076 KiB
7Elfogadva8ms1332 KiB
8Elfogadva8ms1332 KiB
9Elfogadva2ms1076 KiB
10Elfogadva14ms1580 KiB
11Elfogadva2ms1160 KiB
12Elfogadva1ms1076 KiB
subtask30/25
13Elfogadva2ms1260 KiB
14Elfogadva2ms1076 KiB
15Elfogadva2ms1260 KiB
16Elfogadva3ms1588 KiB
17Elfogadva2ms1076 KiB
18Elfogadva2ms1076 KiB
19Elfogadva2ms1076 KiB
20Hibás válasz2ms1076 KiB
21Hibás válasz2ms1080 KiB
22Futási hiba555ms262144 KiB
23Hibás válasz2ms1080 KiB
24Futási hiba456ms262144 KiB
25Elfogadva28ms9384 KiB
26Hibás válasz3ms1076 KiB
27Hibás válasz4ms1076 KiB
28Futási hiba607ms262144 KiB
29Elfogadva14ms5252 KiB
30Futási hiba490ms262144 KiB
31Hibás válasz16ms1076 KiB
32Hibás válasz34ms1340 KiB
33Hibás válasz9ms1204 KiB
subtask40/20
34Elfogadva2ms1076 KiB
35Elfogadva2ms1084 KiB
36Elfogadva2ms1276 KiB
37Elfogadva2ms1076 KiB
38Elfogadva2ms1456 KiB
39Elfogadva2ms1076 KiB
40Elfogadva2ms1076 KiB
41Hibás válasz2ms1076 KiB
42Hibás válasz2ms1112 KiB
43Hibás válasz1ms1076 KiB
44Elfogadva2ms1456 KiB
45Hibás válasz1ms1076 KiB
46Elfogadva7ms3240 KiB
47Elfogadva2ms1076 KiB
48Hibás válasz2ms1076 KiB
49Hibás válasz2ms1140 KiB
50Elfogadva1ms1076 KiB
51Elfogadva1ms1076 KiB
52Elfogadva2ms1076 KiB
53Elfogadva2ms1092 KiB
54Elfogadva2ms1260 KiB
55Elfogadva2ms1076 KiB
56Elfogadva2ms1076 KiB
57Elfogadva2ms1092 KiB
58Elfogadva1ms1076 KiB
59Elfogadva1ms1076 KiB
60Elfogadva2ms1076 KiB
61Elfogadva2ms1076 KiB
62Elfogadva1ms1076 KiB
63Elfogadva1ms1076 KiB
64Elfogadva2ms1076 KiB
65Elfogadva2ms1076 KiB
66Elfogadva1ms1304 KiB
subtask50/15
67Elfogadva2ms1076 KiB
68Elfogadva2ms1076 KiB
69Elfogadva2ms1076 KiB
70Elfogadva2ms1076 KiB
71Elfogadva6ms1336 KiB
72Elfogadva4ms1076 KiB
73Elfogadva8ms1332 KiB
74Elfogadva8ms1332 KiB
75Elfogadva2ms1076 KiB
76Elfogadva14ms1580 KiB
77Elfogadva2ms1160 KiB
78Elfogadva1ms1076 KiB
79Elfogadva2ms1260 KiB
80Elfogadva2ms1076 KiB
81Elfogadva2ms1260 KiB
82Elfogadva3ms1588 KiB
83Elfogadva2ms1076 KiB
84Elfogadva2ms1076 KiB
85Elfogadva2ms1076 KiB
86Hibás válasz2ms1076 KiB
87Hibás válasz2ms1080 KiB
88Futási hiba555ms262144 KiB
89Hibás válasz2ms1080 KiB
90Futási hiba456ms262144 KiB
91Elfogadva28ms9384 KiB
92Hibás válasz3ms1076 KiB
93Hibás válasz4ms1076 KiB
94Futási hiba607ms262144 KiB
95Elfogadva14ms5252 KiB
96Futási hiba490ms262144 KiB
97Hibás válasz16ms1076 KiB
98Hibás válasz34ms1340 KiB
99Hibás válasz9ms1204 KiB
100Elfogadva2ms1084 KiB
101Elfogadva2ms1276 KiB
102Elfogadva2ms1076 KiB
103Elfogadva2ms1456 KiB
104Elfogadva2ms1076 KiB
105Elfogadva2ms1076 KiB
106Hibás válasz2ms1076 KiB
107Hibás válasz2ms1112 KiB
108Hibás válasz1ms1076 KiB
109Elfogadva2ms1456 KiB
110Hibás válasz1ms1076 KiB
111Elfogadva7ms3240 KiB
112Elfogadva2ms1076 KiB
113Hibás válasz2ms1076 KiB
114Hibás válasz2ms1140 KiB
115Elfogadva1ms1076 KiB
116Elfogadva1ms1076 KiB
117Elfogadva2ms1076 KiB
118Elfogadva2ms1092 KiB
119Elfogadva2ms1260 KiB
120Elfogadva2ms1076 KiB
121Elfogadva2ms1076 KiB
122Elfogadva2ms1092 KiB
123Elfogadva1ms1076 KiB
124Elfogadva1ms1076 KiB
125Elfogadva2ms1076 KiB
126Elfogadva2ms1076 KiB
127Elfogadva1ms1076 KiB
128Elfogadva1ms1076 KiB
129Elfogadva2ms1076 KiB
130Elfogadva2ms1076 KiB
131Elfogadva1ms1304 KiB
132Futási hiba448ms262144 KiB
133Hibás válasz3ms1076 KiB
134Futási hiba476ms262144 KiB
135Elfogadva453ms132580 KiB
136Futási hiba570ms262144 KiB
137Hibás válasz6ms2220 KiB
138Futási hiba428ms262144 KiB
139Hibás válasz3ms1076 KiB
140Elfogadva6ms1332 KiB
141Elfogadva4ms1160 KiB
142Elfogadva8ms1248 KiB
143Elfogadva14ms2536 KiB
144Elfogadva12ms1588 KiB
145Elfogadva8ms1536 KiB
146Elfogadva23ms2100 KiB
147Futási hiba731ms262144 KiB
148Futási hiba723ms262144 KiB
149Futási hiba544ms262144 KiB