# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1166876 | PagodePaiva | Keys (IOI21_keys) | C++20 | 679 ms | 83308 KiB |
#include<bits/stdc++.h>
using namespace std;
const int N = 300010;
vector <int> g[N], gc[N];
int typ[N];
int mark[N];
vector <int> kosaraju;
struct DSU{
int pai[N], sz[N];
DSU(){
for(int i = 0;i < N;i++){
pai[i] = i;
sz[i] = 1;
}
}
int find(int x){
return (pai[x] = (x == pai[x] ? x : find(pai[x])));
}
void join(int a, int b){
a = find(a);
b = find(b);
if(a == b) return;
if(sz[a] > sz[b]) swap(a, b);
pai[a] = b;
sz[b] += sz[a];
typ[b] |= typ[a];
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |