229282026-01-16 09:06:33Leventusz09Városnézéscpp17Hibás válasz 20/80717ms262144 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 < 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(uint32_t i=N - 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;

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva2ms1144 KiB
subtask220/20
2Elfogadva2ms1076 KiB
3Elfogadva2ms1260 KiB
4Elfogadva2ms1076 KiB
5Elfogadva6ms1332 KiB
6Elfogadva4ms1076 KiB
7Elfogadva8ms1440 KiB
8Elfogadva8ms1244 KiB
9Elfogadva2ms1076 KiB
10Elfogadva14ms1684 KiB
11Elfogadva2ms1080 KiB
12Elfogadva2ms1144 KiB
subtask30/25
13Elfogadva2ms1092 KiB
14Elfogadva2ms1260 KiB
15Elfogadva2ms1260 KiB
16Elfogadva2ms1456 KiB
17Elfogadva2ms1080 KiB
18Elfogadva2ms1080 KiB
19Elfogadva1ms988 KiB
20Hibás válasz2ms1076 KiB
21Hibás válasz2ms1084 KiB
22Futási hiba589ms262144 KiB
23Hibás válasz2ms1076 KiB
24Futási hiba490ms262144 KiB
25Elfogadva25ms9452 KiB
26Hibás válasz3ms1076 KiB
27Hibás válasz4ms1076 KiB
28Futási hiba529ms262144 KiB
29Elfogadva14ms5280 KiB
30Futási hiba629ms262144 KiB
31Hibás válasz16ms1316 KiB
32Hibás válasz32ms1332 KiB
33Hibás válasz9ms1092 KiB
subtask40/20
34Elfogadva2ms1076 KiB
35Elfogadva1ms1080 KiB
36Elfogadva2ms1076 KiB
37Elfogadva1ms1076 KiB
38Elfogadva2ms1456 KiB
39Elfogadva1ms1268 KiB
40Elfogadva2ms1076 KiB
41Hibás válasz1ms1076 KiB
42Hibás válasz2ms1268 KiB
43Hibás válasz2ms1084 KiB
44Elfogadva3ms1456 KiB
45Hibás válasz2ms1076 KiB
46Elfogadva7ms3240 KiB
47Elfogadva2ms1076 KiB
48Hibás válasz2ms1076 KiB
49Hibás válasz2ms1184 KiB
50Elfogadva2ms1080 KiB
51Elfogadva2ms1076 KiB
52Elfogadva1ms1076 KiB
53Elfogadva1ms1076 KiB
54Elfogadva2ms1076 KiB
55Elfogadva2ms1076 KiB
56Elfogadva1ms1080 KiB
57Elfogadva1ms1076 KiB
58Elfogadva2ms1260 KiB
59Elfogadva2ms1076 KiB
60Elfogadva1ms1076 KiB
61Elfogadva1ms1260 KiB
62Elfogadva2ms1076 KiB
63Elfogadva1ms968 KiB
64Elfogadva2ms1076 KiB
65Elfogadva1ms1076 KiB
66Elfogadva1ms1076 KiB
subtask50/15
67Elfogadva2ms1076 KiB
68Elfogadva2ms1076 KiB
69Elfogadva2ms1260 KiB
70Elfogadva2ms1076 KiB
71Elfogadva6ms1332 KiB
72Elfogadva4ms1076 KiB
73Elfogadva8ms1440 KiB
74Elfogadva8ms1244 KiB
75Elfogadva2ms1076 KiB
76Elfogadva14ms1684 KiB
77Elfogadva2ms1080 KiB
78Elfogadva2ms1144 KiB
79Elfogadva2ms1092 KiB
80Elfogadva2ms1260 KiB
81Elfogadva2ms1260 KiB
82Elfogadva2ms1456 KiB
83Elfogadva2ms1080 KiB
84Elfogadva2ms1080 KiB
85Elfogadva1ms988 KiB
86Hibás válasz2ms1076 KiB
87Hibás válasz2ms1084 KiB
88Futási hiba589ms262144 KiB
89Hibás válasz2ms1076 KiB
90Futási hiba490ms262144 KiB
91Elfogadva25ms9452 KiB
92Hibás válasz3ms1076 KiB
93Hibás válasz4ms1076 KiB
94Futási hiba529ms262144 KiB
95Elfogadva14ms5280 KiB
96Futási hiba629ms262144 KiB
97Hibás válasz16ms1316 KiB
98Hibás válasz32ms1332 KiB
99Hibás válasz9ms1092 KiB
100Elfogadva1ms1080 KiB
101Elfogadva2ms1076 KiB
102Elfogadva1ms1076 KiB
103Elfogadva2ms1456 KiB
104Elfogadva1ms1268 KiB
105Elfogadva2ms1076 KiB
106Hibás válasz1ms1076 KiB
107Hibás válasz2ms1268 KiB
108Hibás válasz2ms1084 KiB
109Elfogadva3ms1456 KiB
110Hibás válasz2ms1076 KiB
111Elfogadva7ms3240 KiB
112Elfogadva2ms1076 KiB
113Hibás válasz2ms1076 KiB
114Hibás válasz2ms1184 KiB
115Elfogadva2ms1080 KiB
116Elfogadva2ms1076 KiB
117Elfogadva1ms1076 KiB
118Elfogadva1ms1076 KiB
119Elfogadva2ms1076 KiB
120Elfogadva2ms1076 KiB
121Elfogadva1ms1080 KiB
122Elfogadva1ms1076 KiB
123Elfogadva2ms1260 KiB
124Elfogadva2ms1076 KiB
125Elfogadva1ms1076 KiB
126Elfogadva1ms1260 KiB
127Elfogadva2ms1076 KiB
128Elfogadva1ms968 KiB
129Elfogadva2ms1076 KiB
130Elfogadva1ms1076 KiB
131Elfogadva1ms1076 KiB
132Futási hiba583ms262144 KiB
133Hibás válasz3ms1096 KiB
134Futási hiba504ms262144 KiB
135Elfogadva405ms132672 KiB
136Futási hiba540ms262144 KiB
137Hibás válasz4ms2220 KiB
138Futási hiba451ms262144 KiB
139Hibás válasz3ms1076 KiB
140Elfogadva6ms1332 KiB
141Elfogadva4ms1244 KiB
142Elfogadva8ms1332 KiB
143Elfogadva14ms2572 KiB
144Elfogadva12ms1588 KiB
145Elfogadva8ms1588 KiB
146Elfogadva20ms1908 KiB
147Futási hiba717ms262144 KiB
148Futási hiba620ms262144 KiB
149Futási hiba674ms262144 KiB