213682026-01-12 21:16:24ercseferencVárosnézéscpp17Hibás válasz 0/801.103s153776 KiB
#include <bits/stdc++.h>
using namespace std;
struct ter{vector<int>bem,ut; long long 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álasz8ms1044 KiB
6Hibás válasz4ms816 KiB
7Hibás válasz14ms1968 KiB
8Hibás válasz14ms1800 KiB
9Elfogadva1ms316 KiB
10Hibás válasz163ms153776 KiB
11Hibás válasz1ms316 KiB
12Hibás válasz1ms316 KiB
subtask30/25
13Elfogadva1ms316 KiB
14Elfogadva1ms316 KiB
15Elfogadva1ms508 KiB
16Elfogadva1ms316 KiB
17Elfogadva1ms332 KiB
18Elfogadva1ms508 KiB
19Elfogadva1ms316 KiB
20Hibás válasz1ms316 KiB
21Hibás válasz1ms316 KiB
22Elfogadva12ms436 KiB
23Hibás válasz3ms516 KiB
24Hibás válasz9ms584 KiB
25Elfogadva4ms564 KiB
26Hibás válasz3ms564 KiB
27Hibás válasz6ms520 KiB
28Elfogadva248ms2536 KiB
29Elfogadva17ms904 KiB
30Elfogadva150ms2888 KiB
31Hibás válasz41ms1960 KiB
32Hibás válasz103ms2184 KiB
33Hibás válasz17ms3124 KiB
subtask40/20
34Elfogadva2ms316 KiB
35Hibás válasz2ms316 KiB
36Elfogadva1ms316 KiB
37Hibás válasz1ms508 KiB
38Hibás válasz1ms560 KiB
39Hibás válasz1ms316 KiB
40Hibás válasz1ms560 KiB
41Hibás válasz2ms508 KiB
42Hibás válasz1ms500 KiB
43Hibás válasz1ms316 KiB
44Hibás válasz1ms316 KiB
45Hibás válasz1ms316 KiB
46Hibás válasz1ms316 KiB
47Hibás válasz1ms316 KiB
48Hibás válasz1ms416 KiB
49Hibás válasz2ms396 KiB
50Elfogadva1ms316 KiB
51Elfogadva1ms316 KiB
52Elfogadva1ms316 KiB
53Hibás válasz1ms316 KiB
54Elfogadva1ms508 KiB
55Elfogadva1ms316 KiB
56Elfogadva1ms316 KiB
57Elfogadva1ms500 KiB
58Elfogadva1ms316 KiB
59Elfogadva1ms316 KiB
60Elfogadva1ms316 KiB
61Elfogadva1ms316 KiB
62Hibás válasz1ms316 KiB
63Elfogadva1ms316 KiB
64Elfogadva2ms332 KiB
65Elfogadva1ms316 KiB
66Elfogadva1ms316 KiB
subtask50/15
67Elfogadva2ms316 KiB
68Elfogadva1ms316 KiB
69Elfogadva1ms316 KiB
70Hibás válasz1ms316 KiB
71Hibás válasz8ms1044 KiB
72Hibás válasz4ms816 KiB
73Hibás válasz14ms1968 KiB
74Hibás válasz14ms1800 KiB
75Elfogadva1ms316 KiB
76Hibás válasz163ms153776 KiB
77Hibás válasz1ms316 KiB
78Hibás válasz1ms316 KiB
79Elfogadva1ms316 KiB
80Elfogadva1ms316 KiB
81Elfogadva1ms508 KiB
82Elfogadva1ms316 KiB
83Elfogadva1ms332 KiB
84Elfogadva1ms508 KiB
85Elfogadva1ms316 KiB
86Hibás válasz1ms316 KiB
87Hibás válasz1ms316 KiB
88Elfogadva12ms436 KiB
89Hibás válasz3ms516 KiB
90Hibás válasz9ms584 KiB
91Elfogadva4ms564 KiB
92Hibás válasz3ms564 KiB
93Hibás válasz6ms520 KiB
94Elfogadva248ms2536 KiB
95Elfogadva17ms904 KiB
96Elfogadva150ms2888 KiB
97Hibás válasz41ms1960 KiB
98Hibás válasz103ms2184 KiB
99Hibás válasz17ms3124 KiB
100Hibás válasz2ms316 KiB
101Elfogadva1ms316 KiB
102Hibás válasz1ms508 KiB
103Hibás válasz1ms560 KiB
104Hibás válasz1ms316 KiB
105Hibás válasz1ms560 KiB
106Hibás válasz2ms508 KiB
107Hibás válasz1ms500 KiB
108Hibás válasz1ms316 KiB
109Hibás válasz1ms316 KiB
110Hibás válasz1ms316 KiB
111Hibás válasz1ms316 KiB
112Hibás válasz1ms316 KiB
113Hibás válasz1ms416 KiB
114Hibás válasz2ms396 KiB
115Elfogadva1ms316 KiB
116Elfogadva1ms316 KiB
117Elfogadva1ms316 KiB
118Hibás válasz1ms316 KiB
119Elfogadva1ms508 KiB
120Elfogadva1ms316 KiB
121Elfogadva1ms316 KiB
122Elfogadva1ms500 KiB
123Elfogadva1ms316 KiB
124Elfogadva1ms316 KiB
125Elfogadva1ms316 KiB
126Elfogadva1ms316 KiB
127Hibás válasz1ms316 KiB
128Elfogadva1ms316 KiB
129Elfogadva2ms332 KiB
130Elfogadva1ms316 KiB
131Elfogadva1ms316 KiB
132Hibás válasz12ms564 KiB
133Hibás válasz2ms564 KiB
134Hibás válasz14ms620 KiB
135Hibás válasz6ms332 KiB
136Hibás válasz4ms536 KiB
137Hibás válasz4ms316 KiB
138Hibás válasz6ms316 KiB
139Hibás válasz3ms564 KiB
140Hibás válasz8ms1064 KiB
141Hibás válasz7ms1088 KiB
142Hibás válasz17ms1440 KiB
143Elfogadva98ms4756 KiB
144Hibás válasz21ms2396 KiB
145Hibás válasz35ms8268 KiB
146Hibás válasz52ms4528 KiB
147Időlimit túllépés1.103s26332 KiB
148Időlimit túllépés1.1s22844 KiB
149Időlimit túllépés1.08s16436 KiB