213672026-01-12 21:14:31ercseferencVárosnézéscpp17Hibás válasz 0/801.103s153620 KiB
#include <bits/stdc++.h>
using namespace std;
struct ter{vector<int>bem,ut; int maxi=0,lat;};
int main()
{
    //ifstream f("szamok.txt");
    int n,m; cin>>n>>m;
    vector<bool>ind(n+1);
    vector<ter>a(n+1);
    for(int i=1; i<=n; i++)
        cin>>a[i].lat;
    for(int i=0; i<m; i++){
        int x,y; cin>>x>>y;
        a[y].bem.push_back(x); ind[x]=1;}
    set<int>l1,l2;
    for(int i=1; i<=n; i++){
        if(!ind[i])l1.insert(i);}
    for(int i:l1){a[i].maxi=a[i].lat; a[i].ut.push_back(i);}
    while(!l1.empty()){
        for(int i:l1){
            for(int j:a[i].bem){
                if(a[j].maxi<a[i].maxi+a[j].lat){
                    a[j].maxi=a[i].maxi+a[j].lat;
                    a[j].ut=a[i].ut; a[j].ut.push_back(j);}
                l2.insert(j);}}
        l1=l2; l2.clear();}
    if(a[1].maxi==0)cout<<-1;
    else{
        cout<<a[1].maxi<<endl;
        for(int i=a[1].ut.size()-1; i>=0; i--)cout<<a[1].ut[i]<<" ";}
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
subtask20/20
2Elfogadva1ms316 KiB
3Elfogadva1ms316 KiB
4Hibás válasz1ms316 KiB
5Hibás válasz8ms1076 KiB
6Hibás válasz4ms564 KiB
7Hibás válasz14ms1676 KiB
8Hibás válasz14ms1880 KiB
9Elfogadva1ms316 KiB
10Hibás válasz199ms153620 KiB
11Hibás válasz1ms316 KiB
12Hibás válasz1ms316 KiB
subtask30/25
13Elfogadva1ms316 KiB
14Elfogadva1ms316 KiB
15Elfogadva1ms316 KiB
16Elfogadva2ms316 KiB
17Elfogadva1ms316 KiB
18Elfogadva1ms316 KiB
19Elfogadva1ms316 KiB
20Hibás válasz1ms316 KiB
21Hibás válasz1ms316 KiB
22Elfogadva12ms572 KiB
23Hibás válasz3ms564 KiB
24Hibás válasz9ms548 KiB
25Elfogadva4ms544 KiB
26Hibás válasz3ms592 KiB
27Hibás válasz6ms564 KiB
28Elfogadva248ms2472 KiB
29Elfogadva17ms888 KiB
30Elfogadva150ms2868 KiB
31Hibás válasz41ms1748 KiB
32Hibás válasz103ms2184 KiB
33Hibás válasz17ms2868 KiB
subtask40/20
34Elfogadva1ms316 KiB
35Hibás válasz1ms508 KiB
36Elfogadva1ms508 KiB
37Hibás válasz1ms316 KiB
38Hibás válasz1ms400 KiB
39Hibás válasz1ms316 KiB
40Hibás válasz1ms316 KiB
41Hibás válasz1ms316 KiB
42Hibás válasz1ms508 KiB
43Hibás válasz1ms316 KiB
44Hibás válasz1ms316 KiB
45Hibás válasz1ms316 KiB
46Hibás válasz1ms316 KiB
47Hibás válasz1ms392 KiB
48Hibás válasz1ms316 KiB
49Hibás válasz2ms316 KiB
50Elfogadva1ms316 KiB
51Elfogadva1ms316 KiB
52Elfogadva1ms316 KiB
53Hibás válasz1ms316 KiB
54Elfogadva1ms316 KiB
55Elfogadva1ms316 KiB
56Elfogadva1ms316 KiB
57Elfogadva1ms316 KiB
58Elfogadva1ms316 KiB
59Elfogadva1ms316 KiB
60Elfogadva1ms508 KiB
61Elfogadva1ms372 KiB
62Hibás válasz1ms316 KiB
63Elfogadva1ms316 KiB
64Elfogadva2ms316 KiB
65Elfogadva1ms508 KiB
66Elfogadva1ms396 KiB
subtask50/15
67Elfogadva1ms316 KiB
68Elfogadva1ms316 KiB
69Elfogadva1ms316 KiB
70Hibás válasz1ms316 KiB
71Hibás válasz8ms1076 KiB
72Hibás válasz4ms564 KiB
73Hibás válasz14ms1676 KiB
74Hibás válasz14ms1880 KiB
75Elfogadva1ms316 KiB
76Hibás válasz199ms153620 KiB
77Hibás válasz1ms316 KiB
78Hibás válasz1ms316 KiB
79Elfogadva1ms316 KiB
80Elfogadva1ms316 KiB
81Elfogadva1ms316 KiB
82Elfogadva2ms316 KiB
83Elfogadva1ms316 KiB
84Elfogadva1ms316 KiB
85Elfogadva1ms316 KiB
86Hibás válasz1ms316 KiB
87Hibás válasz1ms316 KiB
88Elfogadva12ms572 KiB
89Hibás válasz3ms564 KiB
90Hibás válasz9ms548 KiB
91Elfogadva4ms544 KiB
92Hibás válasz3ms592 KiB
93Hibás válasz6ms564 KiB
94Elfogadva248ms2472 KiB
95Elfogadva17ms888 KiB
96Elfogadva150ms2868 KiB
97Hibás válasz41ms1748 KiB
98Hibás válasz103ms2184 KiB
99Hibás válasz17ms2868 KiB
100Hibás válasz1ms508 KiB
101Elfogadva1ms508 KiB
102Hibás válasz1ms316 KiB
103Hibás válasz1ms400 KiB
104Hibás válasz1ms316 KiB
105Hibás válasz1ms316 KiB
106Hibás válasz1ms316 KiB
107Hibás válasz1ms508 KiB
108Hibás válasz1ms316 KiB
109Hibás válasz1ms316 KiB
110Hibás válasz1ms316 KiB
111Hibás válasz1ms316 KiB
112Hibás válasz1ms392 KiB
113Hibás válasz1ms316 KiB
114Hibás válasz2ms316 KiB
115Elfogadva1ms316 KiB
116Elfogadva1ms316 KiB
117Elfogadva1ms316 KiB
118Hibás válasz1ms316 KiB
119Elfogadva1ms316 KiB
120Elfogadva1ms316 KiB
121Elfogadva1ms316 KiB
122Elfogadva1ms316 KiB
123Elfogadva1ms316 KiB
124Elfogadva1ms316 KiB
125Elfogadva1ms508 KiB
126Elfogadva1ms372 KiB
127Hibás válasz1ms316 KiB
128Elfogadva1ms316 KiB
129Elfogadva2ms316 KiB
130Elfogadva1ms508 KiB
131Elfogadva1ms396 KiB
132Hibás válasz12ms564 KiB
133Hibás válasz2ms564 KiB
134Hibás válasz14ms572 KiB
135Hibás válasz6ms564 KiB
136Hibás válasz4ms316 KiB
137Hibás válasz4ms512 KiB
138Hibás válasz6ms496 KiB
139Hibás válasz3ms564 KiB
140Hibás válasz8ms1076 KiB
141Hibás válasz7ms820 KiB
142Hibás válasz16ms1332 KiB
143Elfogadva100ms4692 KiB
144Hibás válasz21ms2332 KiB
145Hibás válasz37ms8264 KiB
146Hibás válasz50ms4332 KiB
147Időlimit túllépés1.103s32564 KiB
148Időlimit túllépés1.1s18996 KiB
149Időlimit túllépés1.09s16180 KiB