# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
994819 | 2024-06-08T06:47:02 Z | Newtonabc | Connecting Supertrees (IOI20_supertrees) | C++14 | 137 ms | 24340 KB |
#include "supertrees.h" #include<bits/stdc++.h> using namespace std; const int N=1e3+10; vector<int> v; int pa[N]; bool cy[N][N]; vector<int> adj[N]; bool vs[N]; void dfs(int u){ vs[u]=true; if(adj[u].size()==1) v.push_back(u); for(int i=0;i<adj[u].size();i++){ if(!vs[adj[u][i]]) dfs(adj[u][i]); } } int root(int x){ if(pa[x]==x) return x; else return pa[x]=root(pa[x]); } int construct(vector<vector<int> > p) { int n = p.size(); vector<vector<int> > answer; for (int i = 0; i < n; i++) { vector<int> row(n,0); answer.push_back(row); } for(int i=0;i<n;i++) pa[i]=i; for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(p[i][j]==1 && root(i)!=root(j)){ answer[i][j]=1; answer[j][i]=1; pa[root(i)]=root(j); } if(p[i][j]==3) return 0; } } for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(p[i][j]==0){ if(root(i)==root(j)) return 0; } } } int cnt=0; for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ int a,b; if(p[i][j]==2){ a=root(i),b=root(j); if(a==b) return 0; if(answer[a][b]==0) cnt++; answer[a][b]=1; answer[b][a]=1; adj[a].push_back(b); adj[b].push_back(a); } } } if(cnt==1) return 0; for(int i=0;i<n;i++){ if(!vs[i]) dfs(i); if(v.empty()) continue; answer[v[0]][v[1]]=1; answer[v[1]][v[0]]=1; v.clear(); } build(answer); return 1; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 0 ms | 348 KB | Output is correct |
3 | Correct | 0 ms | 348 KB | Output is correct |
4 | Correct | 0 ms | 348 KB | Output is correct |
5 | Correct | 0 ms | 348 KB | Output is correct |
6 | Correct | 5 ms | 1244 KB | Output is correct |
7 | Correct | 117 ms | 24148 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 0 ms | 348 KB | Output is correct |
3 | Correct | 0 ms | 348 KB | Output is correct |
4 | Correct | 0 ms | 348 KB | Output is correct |
5 | Correct | 0 ms | 348 KB | Output is correct |
6 | Correct | 5 ms | 1244 KB | Output is correct |
7 | Correct | 117 ms | 24148 KB | Output is correct |
8 | Correct | 0 ms | 348 KB | Output is correct |
9 | Correct | 0 ms | 348 KB | Output is correct |
10 | Correct | 0 ms | 344 KB | Output is correct |
11 | Correct | 0 ms | 468 KB | Output is correct |
12 | Correct | 5 ms | 1372 KB | Output is correct |
13 | Correct | 116 ms | 24148 KB | Output is correct |
14 | Correct | 1 ms | 600 KB | Output is correct |
15 | Correct | 1 ms | 348 KB | Output is correct |
16 | Correct | 3 ms | 860 KB | Output is correct |
17 | Correct | 62 ms | 14120 KB | Output is correct |
18 | Correct | 1 ms | 344 KB | Output is correct |
19 | Correct | 0 ms | 348 KB | Output is correct |
20 | Correct | 31 ms | 6444 KB | Output is correct |
21 | Correct | 120 ms | 24144 KB | Output is correct |
22 | Correct | 117 ms | 24144 KB | Output is correct |
23 | Correct | 129 ms | 24144 KB | Output is correct |
24 | Correct | 118 ms | 23968 KB | Output is correct |
25 | Correct | 53 ms | 14160 KB | Output is correct |
26 | Correct | 51 ms | 14264 KB | Output is correct |
27 | Correct | 137 ms | 24340 KB | Output is correct |
28 | Correct | 120 ms | 24144 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 0 ms | 348 KB | Output is correct |
3 | Correct | 0 ms | 348 KB | Output is correct |
4 | Correct | 0 ms | 348 KB | Output is correct |
5 | Correct | 0 ms | 344 KB | Output is correct |
6 | Correct | 0 ms | 348 KB | Output is correct |
7 | Correct | 0 ms | 348 KB | Output is correct |
8 | Correct | 5 ms | 1372 KB | Output is correct |
9 | Correct | 124 ms | 24100 KB | Output is correct |
10 | Incorrect | 0 ms | 344 KB | Too many ways to get from 0 to 3, should be 2 found no less than 3 |
11 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 0 ms | 348 KB | Output is correct |
3 | Correct | 1 ms | 464 KB | Output is correct |
4 | Correct | 33 ms | 6376 KB | Output is correct |
5 | Correct | 120 ms | 24144 KB | Output is correct |
6 | Correct | 123 ms | 24100 KB | Output is correct |
7 | Correct | 136 ms | 24148 KB | Output is correct |
8 | Incorrect | 0 ms | 348 KB | Too many ways to get from 0 to 2, should be 2 found no less than 3 |
9 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 0 ms | 348 KB | Output is correct |
3 | Correct | 0 ms | 348 KB | Output is correct |
4 | Correct | 0 ms | 348 KB | Output is correct |
5 | Correct | 0 ms | 348 KB | Output is correct |
6 | Correct | 5 ms | 1244 KB | Output is correct |
7 | Correct | 117 ms | 24148 KB | Output is correct |
8 | Correct | 0 ms | 348 KB | Output is correct |
9 | Correct | 0 ms | 348 KB | Output is correct |
10 | Correct | 0 ms | 344 KB | Output is correct |
11 | Correct | 0 ms | 468 KB | Output is correct |
12 | Correct | 5 ms | 1372 KB | Output is correct |
13 | Correct | 116 ms | 24148 KB | Output is correct |
14 | Correct | 1 ms | 600 KB | Output is correct |
15 | Correct | 1 ms | 348 KB | Output is correct |
16 | Correct | 3 ms | 860 KB | Output is correct |
17 | Correct | 62 ms | 14120 KB | Output is correct |
18 | Correct | 1 ms | 344 KB | Output is correct |
19 | Correct | 0 ms | 348 KB | Output is correct |
20 | Correct | 31 ms | 6444 KB | Output is correct |
21 | Correct | 120 ms | 24144 KB | Output is correct |
22 | Correct | 117 ms | 24144 KB | Output is correct |
23 | Correct | 129 ms | 24144 KB | Output is correct |
24 | Correct | 118 ms | 23968 KB | Output is correct |
25 | Correct | 53 ms | 14160 KB | Output is correct |
26 | Correct | 51 ms | 14264 KB | Output is correct |
27 | Correct | 137 ms | 24340 KB | Output is correct |
28 | Correct | 120 ms | 24144 KB | Output is correct |
29 | Correct | 0 ms | 344 KB | Output is correct |
30 | Correct | 0 ms | 348 KB | Output is correct |
31 | Correct | 0 ms | 348 KB | Output is correct |
32 | Correct | 0 ms | 348 KB | Output is correct |
33 | Correct | 0 ms | 344 KB | Output is correct |
34 | Correct | 0 ms | 348 KB | Output is correct |
35 | Correct | 0 ms | 348 KB | Output is correct |
36 | Correct | 5 ms | 1372 KB | Output is correct |
37 | Correct | 124 ms | 24100 KB | Output is correct |
38 | Incorrect | 0 ms | 344 KB | Too many ways to get from 0 to 3, should be 2 found no less than 3 |
39 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 0 ms | 348 KB | Output is correct |
3 | Correct | 0 ms | 348 KB | Output is correct |
4 | Correct | 0 ms | 348 KB | Output is correct |
5 | Correct | 0 ms | 348 KB | Output is correct |
6 | Correct | 5 ms | 1244 KB | Output is correct |
7 | Correct | 117 ms | 24148 KB | Output is correct |
8 | Correct | 0 ms | 348 KB | Output is correct |
9 | Correct | 0 ms | 348 KB | Output is correct |
10 | Correct | 0 ms | 344 KB | Output is correct |
11 | Correct | 0 ms | 468 KB | Output is correct |
12 | Correct | 5 ms | 1372 KB | Output is correct |
13 | Correct | 116 ms | 24148 KB | Output is correct |
14 | Correct | 1 ms | 600 KB | Output is correct |
15 | Correct | 1 ms | 348 KB | Output is correct |
16 | Correct | 3 ms | 860 KB | Output is correct |
17 | Correct | 62 ms | 14120 KB | Output is correct |
18 | Correct | 1 ms | 344 KB | Output is correct |
19 | Correct | 0 ms | 348 KB | Output is correct |
20 | Correct | 31 ms | 6444 KB | Output is correct |
21 | Correct | 120 ms | 24144 KB | Output is correct |
22 | Correct | 117 ms | 24144 KB | Output is correct |
23 | Correct | 129 ms | 24144 KB | Output is correct |
24 | Correct | 118 ms | 23968 KB | Output is correct |
25 | Correct | 53 ms | 14160 KB | Output is correct |
26 | Correct | 51 ms | 14264 KB | Output is correct |
27 | Correct | 137 ms | 24340 KB | Output is correct |
28 | Correct | 120 ms | 24144 KB | Output is correct |
29 | Correct | 0 ms | 344 KB | Output is correct |
30 | Correct | 0 ms | 348 KB | Output is correct |
31 | Correct | 0 ms | 348 KB | Output is correct |
32 | Correct | 0 ms | 348 KB | Output is correct |
33 | Correct | 0 ms | 344 KB | Output is correct |
34 | Correct | 0 ms | 348 KB | Output is correct |
35 | Correct | 0 ms | 348 KB | Output is correct |
36 | Correct | 5 ms | 1372 KB | Output is correct |
37 | Correct | 124 ms | 24100 KB | Output is correct |
38 | Incorrect | 0 ms | 344 KB | Too many ways to get from 0 to 3, should be 2 found no less than 3 |
39 | Halted | 0 ms | 0 KB | - |