96692024-02-23 21:44:30999Átvágás (75 pont)cpp17Hibás válasz 0/75212ms30652 KiB
#include <bits/stdc++.h>
using namespace std;

int main() 
{
  int n;cin>>n;
  vector<vector<int>> v(n+1);
  for(int i = 0;i<n-1;i++){
    int a,b;cin>>a>>b;
    v[a].push_back(b);
    v[b].push_back(a);
  }
  vector<int> dis(n+1,-1);
  int ans1=0;
  queue<int> q;
  int k=1;
  while(v[k].size()!=1)k++;
  q.push(k);
  dis[k]=0;
  while(!q.empty()){
    int node=q.front();
    q.pop();
    if(node!=k&&v[node].size()>2)ans1+=(int)v[node].size()-2;
    for(int i : v[node]){
      if(dis[i]==-1){
        q.push(i);
        dis[i]=dis[node]+1;
      }
    }
  }cout<<ans1<<' ';
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/75
1Hibás válasz0/03ms1812 KiB
2Hibás válasz0/03ms2052 KiB
3Hibás válasz0/09ms3260 KiB
4Hibás válasz0/42ms2348 KiB
5Hibás válasz0/43ms2440 KiB
6Hibás válasz0/43ms2652 KiB
7Hibás válasz0/43ms2912 KiB
8Hibás válasz0/43ms3104 KiB
9Hibás válasz0/43ms3192 KiB
10Hibás válasz0/4142ms30048 KiB
11Hibás válasz0/4160ms29852 KiB
12Hibás válasz0/4175ms30420 KiB
13Hibás válasz0/4181ms30652 KiB
14Hibás válasz0/4202ms29588 KiB
15Hibás válasz0/4194ms28008 KiB
16Hibás válasz0/4212ms27744 KiB
17Hibás válasz0/4196ms27960 KiB
18Hibás válasz0/5210ms28000 KiB
19Hibás válasz0/6199ms27912 KiB
20Hibás válasz0/6202ms27916 KiB
21Hibás válasz0/23ms4536 KiB