Submission #94884

#TimeUsernameProblemLanguageResultExecution timeMemory
94884WLZUntitled (POI11_kon)C++17
100 / 100
1726 ms117332 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  int n;
  cin >> n;  
  vector<int> cnt(n, 0);
  vector<int> v;
  int edges = 0;
  for (int i = 0; i < n; i++) {
    int deg;
    cin >> deg;
    cnt[deg]++;
    edges += deg;
    v.push_back(deg);
    while (deg--) {
      int x;
      cin >> x;
    }
  }
  edges /= 2;
  sort(v.rbegin(), v.rend());
  int sum = 0;
  int ans = 0;
  for (int i = 0; i < n - 1; i++) {
    sum += v[i] - i;
    if (sum == edges) {
      if (v[i] == v[i + 1]) {
        ans += cnt[v[i]];
      } else {
        ans++;
      }
    }
  }
  cout << ans << '\n';
  return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...