Submission #1168170

#TimeUsernameProblemLanguageResultExecution timeMemory
1168170KaleemRazaSyed새로운 문제 (POI13_luk)C++20
90 / 100
433 ms23892 KiB
#include<bits/stdc++.h> using namespace std; #define int long long const int N = 3e5 + 10; vector<int> G[N]; int x; int dfs(int v, int p = -1) { int c = 0; vector<int> vec; int sm = 0; for(int u : G[v]) if(u != p) { c++; sm += max(0ll, dfs(u, v)); } return c + sm - x; } signed main() { int n; cin >> n; for(int i = 1; i < n; i ++) { int u, v; cin >> u >> v; G[u].push_back(v); G[v].push_back(u); } int l = 0, r = n; while(r - l > 1) { int mid = (l + r) / 2; x = mid; if(max(0ll, dfs(1)) == 0) r = mid; else l = mid; } cout << r << endl; 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...