Submission #896518

#TimeUsernameProblemLanguageResultExecution timeMemory
896518AbitoVinjete (COI22_vinjete)C++17
27 / 100
3073 ms495940 KiB
#include <bits/stdc++.h> #define F first #define S second #define pb push_back #define ppb pop_back #define ep insert #define endl '\n' #define elif else if #define pow pwr #define sqrt sqrtt //#define int long long typedef unsigned long long ull; using namespace std; struct edge{ int x,l,r; }; const int N=1e5+5; int n,m,ans[N]; vector<edge> adj[N]; bitset<N> bs[N],vis; void bfs(){ queue<int> q;q.push(1);vis[1]=1; while (!q.empty()){ int x=q.front(); q.pop(); for (auto u:adj[x]){ if (vis[u.x]) continue; bs[u.x]=bs[x]; for (int i=u.l;i<=u.r;i++) bs[u.x][i]=1; vis[u.x]=1; q.push(u.x); } }return; } int32_t main(){ ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL); cin>>n>>m; for (int i=1;i<n;i++){ int x,y,l,r; cin>>x>>y>>l>>r; adj[x].pb({y,l,r}); adj[y].pb({x,l,r}); }bfs(); for (int i=2;i<=n;i++) cout<<bs[i].count()<<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...