Submission #1140504

#TimeUsernameProblemLanguageResultExecution timeMemory
1140504Muhammad_AneeqPetrol stations (CEOI24_stations)C++20
18 / 100
3593 ms10268 KiB
/*
بسم الله الرحمن الرحيم
Author:
                          (:Muhammad Aneeq:)
*/

#include <iostream>
#include <vector>
#warning check the output
using namespace std;
int const N=7e4+10;
vector<pair<int,int>>nei[N]={};
int ans[N]={};
int n,k;
int sz[N]={};
bool w1=0;
void dfs(int u,int pet,int p=-1)
{
    sz[u]=1;
    for (auto [i,w]:nei[u])
    {
        if (i==p)
            continue;
        if (w>pet)
        {
            dfs(i,k-w,u);
            ans[u]+=sz[i];
        }
        else
            dfs(i,pet-w,u);
        sz[u]+=sz[i];
    }
}
inline void solve()
{
    cin>>n>>k;
    for (int i=0;i<n-1;i++)
    {
        int u,v,w;
        cin>>u>>v>>w;
        nei[u].push_back({v,w});
        nei[v].push_back({u,w});
    }
    for (int i=0;i<n;i++)
        dfs(i,k);
    for (int i=0;i<n;i++)
        cout<<ans[i]<<endl;
}
int main()
{
    ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
    int t=1;
    for (int i=1;i<=t;i++)
    {
        solve();
    }
}

Compilation message (stderr)

Main.cpp:9:2: warning: #warning check the output [-Wcpp]
    9 | #warning check the output
      |  ^~~~~~~
#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...