# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
757839 | abcvuitunggio | Stranded Far From Home (BOI22_island) | C++17 | 160 ms | 34940 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define int long long
using namespace std;
struct edge{
int u,v;
}e[200001];
int n,m,p[200001],a[200001],s[200001];
vector <int> ve[200001];
string res;
int f(int i){
return (p[i]==i?i:p[i]=f(p[i]));
}
void unite(int u, int v){
int w=max(s[u],s[v]);
u=f(u);
v=f(v);
if (u==v)
return;
if (a[u]<w)
ve[u].clear();
if (a[v]<w)
ve[v].clear();
if (ve[u].size()<ve[v].size())
swap(u,v);
a[u]+=a[v];
p[v]=u;
for (int i:ve[v])
ve[u].push_back(i);
ve[v].clear();
}
# | 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... |