Submission #2998759
Source Code Expand
#include <bits/stdc++.h> using namespace std; using ll = long long; #define rep(i, a) for (int (i) = 0; (i) < (int) (a); (i)++) #define reps(i, a, b) for (int (i) = (int) (a); (i) < (int) (b); (i)++) #define rrep(i, a) for (int (i) = (int) a-1; (i) >= 0; (i)--) #define rreps(i, a, b) for (int (i) = (int) (a)-1; (i) >= (int) (b); (i)--) #define MP(a, b) make_pair((a), (b)) #define PB(a) push_back((a)) #define all(v) (v).begin(), (v).end() #define PRINT(f) if((f)){cout << (TRUE__) << endl;}else{cout << FALSE__ << endl;} #define TRUE__ "Yes" #define FALSE__ "No" #define PERM(v) next_permutation(all(v)) #define UNIQUE(v) sort(all(v));(v).erase(unique(all(v)), v.end()) #define CIN(type, x) type x;cin >> x #ifdef LOCAL #define lcout(a) cout << a; #define lcoutln(a) cout << a << endl; #define lcerr(a) cerr << a; #define lcerrln(a) cerr << a << endl; #else #define lcout(a) #define lcoutln(a) #define lcerr(a) #define lcerrln(a) #endif class uni_find { public: vector<int> par; vector<int> rank; vector<int> hen; int mysize; uni_find(int n) {init(n);} void init(int n); int root(int x) {return par[x] == x ? x : par[x] = root(par[x]);} bool same(int x, int y) {return root(x) == root(y);} void unite(int x, int y); int size() {return mysize;} }; void uni_find::init(int n) { vector<int> pt(n); vector<int> rt(n); vector<int> ht(n); par = pt; rank = rt; hen = ht; rep(i, n) par[i] = i, rank[i] = 0, hen[i] = 0; mysize = n; } void uni_find::unite(int x, int y) { x = root(x); y = root(y); if (x == y) { hen[x]++; return; } if (rank[x] < rank[y]) { par[x] = y; hen[y] += hen[x] + 1; } else { par[y] = x; hen[x] += hen[y] + 1; if (rank[x] == rank[y]) rank[x]++; } } int N, M; int main() { cin >> N >> M; uni_find uf(N); rep(i, M) { CIN(int, a); CIN(int, b); uf.unite(a-1, b-1); } int res = 0; vector<int> cnt(N); rep(i, N) cnt[uf.par[i]]++; rep(i, N) { if (i == uf.par[i]) { res += uf.hen[i] == cnt[i] - 1; } } cout << res << endl; }
Submission Info
Submission Time | |
---|---|
Task | B - バウムテスト |
User | spihill |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 2111 Byte |
Status | WA |
Exec Time | 3 ms |
Memory | 256 KB |
Judge Result
Set Name | Sample | All | ||||||
---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 100 | ||||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt |
All | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt, subtask1_31.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
subtask0_sample_01.txt | AC | 1 ms | 256 KB |
subtask0_sample_02.txt | AC | 1 ms | 256 KB |
subtask0_sample_03.txt | AC | 1 ms | 256 KB |
subtask1_01.txt | AC | 1 ms | 256 KB |
subtask1_02.txt | AC | 1 ms | 256 KB |
subtask1_03.txt | AC | 1 ms | 256 KB |
subtask1_04.txt | AC | 1 ms | 256 KB |
subtask1_05.txt | AC | 1 ms | 256 KB |
subtask1_06.txt | AC | 1 ms | 256 KB |
subtask1_07.txt | WA | 1 ms | 256 KB |
subtask1_08.txt | WA | 1 ms | 256 KB |
subtask1_09.txt | WA | 1 ms | 256 KB |
subtask1_10.txt | WA | 1 ms | 256 KB |
subtask1_11.txt | WA | 1 ms | 256 KB |
subtask1_12.txt | WA | 1 ms | 256 KB |
subtask1_13.txt | AC | 1 ms | 256 KB |
subtask1_14.txt | WA | 1 ms | 256 KB |
subtask1_15.txt | WA | 1 ms | 256 KB |
subtask1_16.txt | AC | 1 ms | 256 KB |
subtask1_17.txt | AC | 1 ms | 256 KB |
subtask1_18.txt | WA | 1 ms | 256 KB |
subtask1_19.txt | AC | 1 ms | 256 KB |
subtask1_20.txt | WA | 1 ms | 256 KB |
subtask1_21.txt | WA | 1 ms | 256 KB |
subtask1_22.txt | WA | 1 ms | 256 KB |
subtask1_23.txt | WA | 1 ms | 256 KB |
subtask1_24.txt | AC | 1 ms | 256 KB |
subtask1_25.txt | AC | 1 ms | 256 KB |
subtask1_26.txt | WA | 1 ms | 256 KB |
subtask1_27.txt | AC | 1 ms | 256 KB |
subtask1_28.txt | WA | 1 ms | 256 KB |
subtask1_29.txt | AC | 3 ms | 256 KB |
subtask1_30.txt | AC | 3 ms | 256 KB |
subtask1_31.txt | AC | 1 ms | 256 KB |