# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1069914 | vjudge1 | Petrol stations (CEOI24_stations) | C++17 | 30 ms | 604 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
long long int siz[1002];
int vis[1002]; vector<pair<int,long long int>> adjl[1002];
void dfs(int s){
vis[s]++;
for(int i = 0; i < adjl[s].size(); i++){
if(vis[adjl[s][i].first] == 0){
dfs(adjl[s][i].first);
siz[s] += siz[adjl[s][i].first];
}
}
siz[s]++;
}
int main()
{
int n, k;
cin >> n >> k;
for(int i = 0; i < (n - 1); i++){
int u, v;
cin >> u >> v;
long long int l;
cin >> l;
adjl[u].push_back({v,l});
adjl[v].push_back({u, l});
}
long long int ans[n];
for(int i = 0; i < n; i++){
ans[i] = 0;
}
for(int i = 0; i < n; i++){
long long int cap[n];
for(int j = 0; j < n; j++){
siz[j] = 0;
cap[j] = 0;
vis[j] = 0;
}
dfs(i);
cap[i] = k;
for(int j = 0; j < n; j++){
vis[j] = 0;
}
queue<int>q;
q.push(i);
vis[i]++;
while(!q.empty()){
int a = q.front();
q.pop();
for(int j = 0; j < adjl[a].size(); j++){
pair<int,long long int> p = adjl[a][j];
int x = p.first;
long long int dist = p.second;
if(vis[x] == 0){
if(cap[a] >= dist){
cap[x] = cap[a] - dist;
}else{
ans[a] += siz[x];
cap[x] = k - dist;
}
q.push(x);
vis[x]++;
}
}
}
}
for(int i = 0; i < n; i++){
cout << ans[i] << endl;
}
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |