提出 #53123170
ソースコード 拡げる
#include <iostream>
#include <utility>
#include <vector>
#include <algorithm>
#include <numeric>
#include <map>
#include <unordered_set>
#include <unordered_map>
#include <queue>
#include <set>
#include <stack>
#include <fstream>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#include <bitset>
#include <sstream>
using namespace std;
using namespace __gnu_pbds;
/* clang-format off */
/* TYPES */
#define ll long long
#define pii pair<int, int>
#define pll pair<long long, long long>
#define vi vector<int>
#define vll vector<long long>
#define vvi vector<vector<int>>
#define vvll vector<vector<long long>>
#define mii map<int, int>
#define si set<int>
#define sc set<char>
#define sz(x) (x).size()
/* FUNCTIONS */
#define feach(el, v) for(auto &el: v)
#define rep(i, n) for(int i=0;i<n;i++)
#define reprv(i, n) for(int i=n-1;i>=0;i--)
#define reps(i, s, e) for(int i=s;i<e;i++)
#define reprve(i, e, s) for(int i=e;i>=s;i--)
#define pb push_back
#define eb emplace_back
#define dec(zz) int (zz); cin >> zz;
#define decv(zz, n) vector<int> zz(n); for(int i=0;i<n;++i) cin >> zz[i];
#define decvn(zz, n) int n; cin >> n; vector<int> zz(n); for(int i=0;i<n;++i) cin >> zz[i];
typedef tree<int, null_type, less_equal<>, rb_tree_tag, tree_order_statistics_node_update> oSet;
const int MAXN = 200020;
vector<int> parent(MAXN), rnk(MAXN);
void makeSets(int n) {
rep(i, n) {
parent[i] = i;
rnk[i] = 0;
}
}
int findSet(int v) {
if (v == parent[v]) return v;
return parent[v] = findSet(parent[v]);
}
void unionSets(int a, int b) {
a = findSet(a), b = findSet(b);
if (a != b) {
if (rnk[a] < rnk[b]) swap(a, b);
parent[b] = a;
if (rnk[a] == rnk[b]) ++rnk[a];
}
}
int main() {
int n, q; cin >> n >> q;
makeSets(n);
map<ll, vector<int>> edges;
rep(i, q) {
ll compSz, cost; cin >> compSz >> cost;
int vrt;
rep(j, compSz) {
cin >> vrt;
edges[cost].push_back(vrt - 1);
}
}
ll totalCost = 0;
for (auto &[compCost, conComp]: edges) {
int first = conComp[0];
for (auto &vComp: conComp) {
if (findSet(first) != findSet(vComp)) {
totalCost += compCost;
unionSets(first, vComp);
}
}
}
rep(i, n) {
if (findSet(i) != findSet(0)) {
cout << "-1";
return 0;
}
}
cout << totalCost;
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | E - Clique Connect |
| ユーザ | HUECTRUM |
| 言語 | C++ 20 (gcc 12.2) |
| 得点 | 0 |
| コード長 | 2619 Byte |
| 結果 | WA |
| 実行時間 | 299 ms |
| メモリ | 26640 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||||
|---|---|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 0 / 450 | ||||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 02_random2_00.txt, 02_random2_01.txt, 02_random2_02.txt, 02_random2_03.txt, 02_random2_04.txt, 02_random2_05.txt, 02_random2_06.txt, 02_random2_07.txt, 02_random2_08.txt, 02_random2_09.txt, 02_random2_10.txt, 02_random2_11.txt, 02_random2_12.txt, 02_random2_13.txt, 02_random2_14.txt, 02_random2_15.txt, 02_random2_16.txt, 02_random2_17.txt, 02_random2_18.txt, 02_random2_19.txt, 02_random2_20.txt, 02_random2_21.txt, 02_random2_22.txt, 02_random2_23.txt, 02_random2_24.txt, 02_random2_25.txt, 02_random2_26.txt, 02_random2_27.txt, 02_random2_28.txt, 02_random2_29.txt, 02_random2_30.txt, 02_random2_31.txt, 02_random2_32.txt, 02_random2_33.txt, 02_random2_34.txt, 02_random2_35.txt, 02_random2_36.txt, 02_random2_37.txt, 02_random2_38.txt, 02_random2_39.txt, 03_handmade_00.txt, 03_handmade_01.txt, 03_handmade_02.txt, 03_handmade_03.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 00_sample_00.txt | AC | 2 ms | 4572 KiB |
| 00_sample_01.txt | AC | 2 ms | 4548 KiB |
| 00_sample_02.txt | AC | 2 ms | 4504 KiB |
| 01_random_00.txt | AC | 124 ms | 10504 KiB |
| 01_random_01.txt | AC | 159 ms | 14248 KiB |
| 01_random_02.txt | AC | 223 ms | 18344 KiB |
| 01_random_03.txt | AC | 242 ms | 22088 KiB |
| 01_random_04.txt | AC | 299 ms | 26576 KiB |
| 02_random2_00.txt | AC | 80 ms | 6724 KiB |
| 02_random2_01.txt | WA | 83 ms | 6464 KiB |
| 02_random2_02.txt | WA | 85 ms | 7496 KiB |
| 02_random2_03.txt | WA | 98 ms | 7956 KiB |
| 02_random2_04.txt | WA | 103 ms | 8508 KiB |
| 02_random2_05.txt | AC | 89 ms | 6808 KiB |
| 02_random2_06.txt | WA | 91 ms | 6740 KiB |
| 02_random2_07.txt | WA | 97 ms | 6868 KiB |
| 02_random2_08.txt | WA | 120 ms | 8948 KiB |
| 02_random2_09.txt | WA | 124 ms | 9772 KiB |
| 02_random2_10.txt | AC | 97 ms | 6868 KiB |
| 02_random2_11.txt | WA | 101 ms | 6572 KiB |
| 02_random2_12.txt | WA | 107 ms | 7368 KiB |
| 02_random2_13.txt | WA | 140 ms | 10008 KiB |
| 02_random2_14.txt | WA | 148 ms | 11316 KiB |
| 02_random2_15.txt | AC | 106 ms | 6720 KiB |
| 02_random2_16.txt | WA | 109 ms | 6700 KiB |
| 02_random2_17.txt | WA | 116 ms | 7572 KiB |
| 02_random2_18.txt | WA | 158 ms | 11120 KiB |
| 02_random2_19.txt | WA | 170 ms | 12564 KiB |
| 02_random2_20.txt | AC | 114 ms | 6816 KiB |
| 02_random2_21.txt | WA | 118 ms | 6676 KiB |
| 02_random2_22.txt | WA | 127 ms | 7940 KiB |
| 02_random2_23.txt | WA | 175 ms | 12152 KiB |
| 02_random2_24.txt | WA | 184 ms | 14256 KiB |
| 02_random2_25.txt | AC | 123 ms | 6960 KiB |
| 02_random2_26.txt | WA | 125 ms | 6544 KiB |
| 02_random2_27.txt | WA | 135 ms | 7704 KiB |
| 02_random2_28.txt | WA | 198 ms | 13232 KiB |
| 02_random2_29.txt | WA | 206 ms | 15808 KiB |
| 02_random2_30.txt | AC | 131 ms | 6732 KiB |
| 02_random2_31.txt | WA | 134 ms | 6708 KiB |
| 02_random2_32.txt | WA | 146 ms | 6856 KiB |
| 02_random2_33.txt | WA | 210 ms | 14380 KiB |
| 02_random2_34.txt | WA | 231 ms | 17320 KiB |
| 02_random2_35.txt | AC | 139 ms | 6772 KiB |
| 02_random2_36.txt | WA | 143 ms | 6808 KiB |
| 02_random2_37.txt | WA | 154 ms | 6960 KiB |
| 02_random2_38.txt | WA | 228 ms | 14952 KiB |
| 02_random2_39.txt | WA | 262 ms | 18736 KiB |
| 03_handmade_00.txt | AC | 2 ms | 4508 KiB |
| 03_handmade_01.txt | AC | 35 ms | 5808 KiB |
| 03_handmade_02.txt | AC | 35 ms | 5692 KiB |
| 03_handmade_03.txt | WA | 294 ms | 26640 KiB |