#include <vector>
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pii pair<int, int>
#define fir first
#define sec second
const int mxN=300100;
int N, M;
queue <int> que;
queue <int> cque[mxN];
vector <pii> adj[mxN];
vector <int> ans;
bool Chk[mxN], CChk[mxN];
int cnt=1000000;
void unlock(int cnum)
{
CChk[cnum]=true;
while(!cque[cnum].empty())
{
int now=cque[cnum].front();
cque[cnum].pop();
if(Chk[now]) continue;
Chk[now]=true;
que.push(now);
}
}
void push_in(int nnum, int cnum)
{
if(CChk[cnum])
{
if(Chk[nnum]) return;
Chk[nnum]=true;
que.push(nnum);
}
else
{
cque[cnum].push(nnum);
}
}
std::vector<int> find_reachable(std::vector<int> r, std::vector<int> u, std::vector<int> v, std::vector<int> c) {
N=r.size();
M=u.size();
for(int i=0;i<M;i++)
{
adj[u[i]].push_back({v[i], c[i]});
adj[v[i]].push_back({u[i], c[i]});
}
ans.resize(N);
for(int i=0;i<N;i++)
{
while(!que.empty()) que.pop();
for(int j=0;j<N;j++) while(!cque[j].empty()) cque[j].pop();
for(int j=0;j<N;j++) Chk[j]=false, CChk[j]=false;
que.push(i);
Chk[i]=true;
while(!que.empty())
{
int now=que.front();
que.pop();
if(!CChk[r[now]])
{
unlock(r[now]);
}
for(pii nxt : adj[now])
{
if(!Chk[nxt.fir]) push_in(nxt.fir, nxt.sec);
}
}
for(int j=0;j<N;j++) if(Chk[j]) ans[i]++;
}
for(int i=0;i<N;i++) cnt=min(cnt, ans[i]);
for(int i=0;i<N;i++) ans[i]=(ans[i]==cnt ? 1 : 0);
return ans;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
150 ms |
209360 KB |
Output is correct |
2 |
Correct |
162 ms |
209364 KB |
Output is correct |
3 |
Correct |
145 ms |
209284 KB |
Output is correct |
4 |
Correct |
163 ms |
209368 KB |
Output is correct |
5 |
Correct |
154 ms |
209340 KB |
Output is correct |
6 |
Correct |
184 ms |
209372 KB |
Output is correct |
7 |
Correct |
146 ms |
209288 KB |
Output is correct |
8 |
Correct |
176 ms |
209364 KB |
Output is correct |
9 |
Correct |
166 ms |
209300 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
150 ms |
209360 KB |
Output is correct |
2 |
Correct |
162 ms |
209364 KB |
Output is correct |
3 |
Correct |
145 ms |
209284 KB |
Output is correct |
4 |
Correct |
163 ms |
209368 KB |
Output is correct |
5 |
Correct |
154 ms |
209340 KB |
Output is correct |
6 |
Correct |
184 ms |
209372 KB |
Output is correct |
7 |
Correct |
146 ms |
209288 KB |
Output is correct |
8 |
Correct |
176 ms |
209364 KB |
Output is correct |
9 |
Correct |
166 ms |
209300 KB |
Output is correct |
10 |
Correct |
153 ms |
209296 KB |
Output is correct |
11 |
Correct |
149 ms |
209372 KB |
Output is correct |
12 |
Correct |
152 ms |
209388 KB |
Output is correct |
13 |
Correct |
171 ms |
209476 KB |
Output is correct |
14 |
Correct |
152 ms |
209332 KB |
Output is correct |
15 |
Correct |
153 ms |
209304 KB |
Output is correct |
16 |
Correct |
146 ms |
209252 KB |
Output is correct |
17 |
Correct |
149 ms |
209356 KB |
Output is correct |
18 |
Correct |
163 ms |
209248 KB |
Output is correct |
19 |
Correct |
148 ms |
209348 KB |
Output is correct |
20 |
Correct |
155 ms |
209360 KB |
Output is correct |
21 |
Correct |
153 ms |
209388 KB |
Output is correct |
22 |
Correct |
145 ms |
209296 KB |
Output is correct |
23 |
Correct |
158 ms |
209316 KB |
Output is correct |
24 |
Correct |
152 ms |
209372 KB |
Output is correct |
25 |
Correct |
154 ms |
209268 KB |
Output is correct |
26 |
Correct |
155 ms |
209372 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
150 ms |
209360 KB |
Output is correct |
2 |
Correct |
162 ms |
209364 KB |
Output is correct |
3 |
Correct |
145 ms |
209284 KB |
Output is correct |
4 |
Correct |
163 ms |
209368 KB |
Output is correct |
5 |
Correct |
154 ms |
209340 KB |
Output is correct |
6 |
Correct |
184 ms |
209372 KB |
Output is correct |
7 |
Correct |
146 ms |
209288 KB |
Output is correct |
8 |
Correct |
176 ms |
209364 KB |
Output is correct |
9 |
Correct |
166 ms |
209300 KB |
Output is correct |
10 |
Correct |
153 ms |
209296 KB |
Output is correct |
11 |
Correct |
149 ms |
209372 KB |
Output is correct |
12 |
Correct |
152 ms |
209388 KB |
Output is correct |
13 |
Correct |
171 ms |
209476 KB |
Output is correct |
14 |
Correct |
152 ms |
209332 KB |
Output is correct |
15 |
Correct |
153 ms |
209304 KB |
Output is correct |
16 |
Correct |
146 ms |
209252 KB |
Output is correct |
17 |
Correct |
149 ms |
209356 KB |
Output is correct |
18 |
Correct |
163 ms |
209248 KB |
Output is correct |
19 |
Correct |
148 ms |
209348 KB |
Output is correct |
20 |
Correct |
155 ms |
209360 KB |
Output is correct |
21 |
Correct |
153 ms |
209388 KB |
Output is correct |
22 |
Correct |
145 ms |
209296 KB |
Output is correct |
23 |
Correct |
158 ms |
209316 KB |
Output is correct |
24 |
Correct |
152 ms |
209372 KB |
Output is correct |
25 |
Correct |
154 ms |
209268 KB |
Output is correct |
26 |
Correct |
155 ms |
209372 KB |
Output is correct |
27 |
Correct |
214 ms |
209476 KB |
Output is correct |
28 |
Correct |
226 ms |
209564 KB |
Output is correct |
29 |
Correct |
226 ms |
209476 KB |
Output is correct |
30 |
Correct |
192 ms |
209528 KB |
Output is correct |
31 |
Correct |
159 ms |
209348 KB |
Output is correct |
32 |
Correct |
140 ms |
209340 KB |
Output is correct |
33 |
Correct |
159 ms |
209332 KB |
Output is correct |
34 |
Correct |
173 ms |
209476 KB |
Output is correct |
35 |
Correct |
176 ms |
209420 KB |
Output is correct |
36 |
Correct |
282 ms |
209476 KB |
Output is correct |
37 |
Correct |
273 ms |
209644 KB |
Output is correct |
38 |
Correct |
328 ms |
209536 KB |
Output is correct |
39 |
Correct |
308 ms |
209648 KB |
Output is correct |
40 |
Correct |
160 ms |
209444 KB |
Output is correct |
41 |
Correct |
186 ms |
209432 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
150 ms |
209360 KB |
Output is correct |
2 |
Correct |
162 ms |
209364 KB |
Output is correct |
3 |
Correct |
145 ms |
209284 KB |
Output is correct |
4 |
Correct |
163 ms |
209368 KB |
Output is correct |
5 |
Correct |
154 ms |
209340 KB |
Output is correct |
6 |
Correct |
184 ms |
209372 KB |
Output is correct |
7 |
Correct |
146 ms |
209288 KB |
Output is correct |
8 |
Correct |
176 ms |
209364 KB |
Output is correct |
9 |
Correct |
166 ms |
209300 KB |
Output is correct |
10 |
Execution timed out |
3051 ms |
228020 KB |
Time limit exceeded |
11 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
150 ms |
209360 KB |
Output is correct |
2 |
Correct |
162 ms |
209364 KB |
Output is correct |
3 |
Correct |
145 ms |
209284 KB |
Output is correct |
4 |
Correct |
163 ms |
209368 KB |
Output is correct |
5 |
Correct |
154 ms |
209340 KB |
Output is correct |
6 |
Correct |
184 ms |
209372 KB |
Output is correct |
7 |
Correct |
146 ms |
209288 KB |
Output is correct |
8 |
Correct |
176 ms |
209364 KB |
Output is correct |
9 |
Correct |
166 ms |
209300 KB |
Output is correct |
10 |
Correct |
153 ms |
209296 KB |
Output is correct |
11 |
Correct |
149 ms |
209372 KB |
Output is correct |
12 |
Correct |
152 ms |
209388 KB |
Output is correct |
13 |
Correct |
171 ms |
209476 KB |
Output is correct |
14 |
Correct |
152 ms |
209332 KB |
Output is correct |
15 |
Correct |
153 ms |
209304 KB |
Output is correct |
16 |
Correct |
146 ms |
209252 KB |
Output is correct |
17 |
Correct |
149 ms |
209356 KB |
Output is correct |
18 |
Correct |
163 ms |
209248 KB |
Output is correct |
19 |
Correct |
148 ms |
209348 KB |
Output is correct |
20 |
Correct |
155 ms |
209360 KB |
Output is correct |
21 |
Correct |
153 ms |
209388 KB |
Output is correct |
22 |
Correct |
145 ms |
209296 KB |
Output is correct |
23 |
Correct |
158 ms |
209316 KB |
Output is correct |
24 |
Correct |
152 ms |
209372 KB |
Output is correct |
25 |
Correct |
154 ms |
209268 KB |
Output is correct |
26 |
Correct |
155 ms |
209372 KB |
Output is correct |
27 |
Correct |
214 ms |
209476 KB |
Output is correct |
28 |
Correct |
226 ms |
209564 KB |
Output is correct |
29 |
Correct |
226 ms |
209476 KB |
Output is correct |
30 |
Correct |
192 ms |
209528 KB |
Output is correct |
31 |
Correct |
159 ms |
209348 KB |
Output is correct |
32 |
Correct |
140 ms |
209340 KB |
Output is correct |
33 |
Correct |
159 ms |
209332 KB |
Output is correct |
34 |
Correct |
173 ms |
209476 KB |
Output is correct |
35 |
Correct |
176 ms |
209420 KB |
Output is correct |
36 |
Correct |
282 ms |
209476 KB |
Output is correct |
37 |
Correct |
273 ms |
209644 KB |
Output is correct |
38 |
Correct |
328 ms |
209536 KB |
Output is correct |
39 |
Correct |
308 ms |
209648 KB |
Output is correct |
40 |
Correct |
160 ms |
209444 KB |
Output is correct |
41 |
Correct |
186 ms |
209432 KB |
Output is correct |
42 |
Execution timed out |
3051 ms |
228020 KB |
Time limit exceeded |
43 |
Halted |
0 ms |
0 KB |
- |