Submission #33887853


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
#define MOD 1000000007
#define rep(i,a,n) for (ll i=a;i<(ll)n;i++)
#define per(i,a,n) for (ll i=n;i-->(ll)a;)
#define pb push_back

ll read(){ll r;scanf("%lld",&r);return r;} // read

vector<int>p2[200010];

int c[200010]; // count 0

int x(int u){ return c[u] > 0;} // 根据子节点0的个数 推断是否和子节点匹配

void dfs(int u,int f){
  for(auto v:p2[u]) if(v != f) {
    dfs(v,u);
    c[u] += !x(v);
  }
}

void swaproot(int u,int v){
  c[u] -= !x(v);
  c[v] += !x(u);
}

int dfs2(int u,int f){
  int r = !x(u);
  for(auto v:p2[u]) if(v != f) {
    swaproot(u,v);
    r += dfs2(v,u);
    swaproot(v,u);
  }
  return r;
}

int main(){
  int n = read();
  rep(i,1,n){
    int u = read();
    int v = read();
    p2[u].pb(v);
    p2[v].pb(u);
  }
  dfs(1,0);
  printf("%d\n", dfs2(1,0));
  return 0;
}

Submission Info

Submission Time
Task G - Vertex Deletion
User cromarmot
Language C++ (GCC 9.2.1)
Score 600
Code Size 886 Byte
Status AC
Exec Time 181 ms
Memory 30368 KiB

Compile Error

./Main.cpp: In function ‘ll read()’:
./Main.cpp:10:21: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   10 | ll read(){ll r;scanf("%lld",&r);return r;} // read
      |                ~~~~~^~~~~~~~~~~

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 600 / 600
Status
AC × 3
AC × 34
Set Name Test Cases
Sample sample_00.txt, sample_01.txt, sample_02.txt
All case_00.txt, case_01.txt, case_02.txt, case_03.txt, case_04.txt, case_05.txt, case_06.txt, case_07.txt, case_08.txt, case_09.txt, case_10.txt, case_11.txt, case_12.txt, case_13.txt, case_14.txt, case_15.txt, case_16.txt, case_17.txt, case_18.txt, case_19.txt, case_20.txt, case_21.txt, case_22.txt, case_23.txt, case_24.txt, case_25.txt, case_26.txt, case_27.txt, case_28.txt, case_29.txt, case_30.txt, sample_00.txt, sample_01.txt, sample_02.txt
Case Name Status Exec Time Memory
case_00.txt AC 120 ms 27612 KiB
case_01.txt AC 114 ms 27132 KiB
case_02.txt AC 134 ms 29244 KiB
case_03.txt AC 174 ms 27856 KiB
case_04.txt AC 181 ms 27936 KiB
case_05.txt AC 176 ms 24436 KiB
case_06.txt AC 178 ms 30368 KiB
case_07.txt AC 119 ms 24112 KiB
case_08.txt AC 120 ms 24612 KiB
case_09.txt AC 132 ms 30228 KiB
case_10.txt AC 55 ms 15608 KiB
case_11.txt AC 96 ms 15488 KiB
case_12.txt AC 98 ms 15512 KiB
case_13.txt AC 100 ms 15472 KiB
case_14.txt AC 106 ms 15496 KiB
case_15.txt AC 99 ms 15524 KiB
case_16.txt AC 99 ms 15544 KiB
case_17.txt AC 100 ms 15532 KiB
case_18.txt AC 98 ms 15588 KiB
case_19.txt AC 94 ms 15508 KiB
case_20.txt AC 96 ms 15504 KiB
case_21.txt AC 28 ms 9652 KiB
case_22.txt AC 63 ms 12904 KiB
case_23.txt AC 27 ms 9940 KiB
case_24.txt AC 28 ms 9756 KiB
case_25.txt AC 18 ms 9008 KiB
case_26.txt AC 28 ms 9812 KiB
case_27.txt AC 22 ms 9212 KiB
case_28.txt AC 69 ms 13508 KiB
case_29.txt AC 22 ms 9428 KiB
case_30.txt AC 56 ms 12404 KiB
sample_00.txt AC 6 ms 8336 KiB
sample_01.txt AC 6 ms 8220 KiB
sample_02.txt AC 7 ms 8336 KiB