# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
733958 | loctildore | Phone Plans (CCO22_day2problem2) | C++17 | 959 ms | 131904 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>
using namespace std;
#define int long long
#define f first
#define s second
#define endl '\n'
#define all(x) begin(x), end(x)
int n, ca, cb, k;
int u, v, l;
int ans = INT_MAX;
vector<tuple<int,int,int>> va, vb;
vector<pair<int,pair<int,int>>> lga[200069], lgb[200069];
int cnt, cnta[200069], cntb[200069];
vector<int> chd[200069];
int par[200069];
pair<int,int> rts[200069];
map<int,int> mp[200069];
void dsuclr() {
for (int i = 0; i < n; i++) {
par[i] = i;
chd[i].clear();
chd[i].push_back(i);
}
cnt = 0;
}
void merge(int x, int y, vector<pair<int,pair<int,int>>> &lg) {
x = par[x]; y = par[y];
if (x == y) return;
if (chd[x].size() < chd[y].size()) swap(x, y);
cnt += chd[x].size() * chd[y].size();
# | 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... |