Submission #1140770

#TimeUsernameProblemLanguageResultExecution timeMemory
1140770AbdullahIshfaqPetrol stations (CEOI24_stations)C++20
18 / 100
3594 ms10652 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define MOD 1000000007 const ll N = 70005; vector<pair<ll,ll>> g[N]; ll ans[N], k; ll dfs(ll u, ll v, ll kk){ ll sub = 1; for(auto i : g[u]){ if(i.first != v){ ll cur = kk - i.second; if(cur < 0){ int tmp = dfs(i.first, u, k - i.second); ans[u] += tmp; sub += tmp; } else{ sub += dfs(i.first, u, cur); } } } return sub; } void solve(){ ll n, u, v, w; cin >> n >> k; for(ll i = 0 ;i < n - 1 ; i++){ cin >> u >> v >> w; g[u].push_back({v, w}); g[v].push_back({u, w}); } for(ll i = 0; i < n; i ++){ dfs(i, -1, k); } for(ll i = 0 ;i < n ;i ++){ cout << ans[i] << '\n'; } } int main() { ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); ll tests = 1; // cin >> tests; for(ll i = 1; i <= tests; i++){ solve(); } }
#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...