Submission #892311

#TimeUsernameProblemLanguageResultExecution timeMemory
892311vjudge1Sprinkler (JOI22_sprinkler)C++17
3 / 100
11 ms6492 KiB
#include <bits/stdc++.h> #define int long long #define all(x) x.begin(),x.end() #define ff first #define ss second #define pb push_back using namespace std; const int N=1e5+5; vector <int> g[N]; int h[N]; signed main(){ int n,l; cin>>n>>l; for(int i=0;i<n-1;i++){ int u,v; cin>>u>>v; g[u].pb(v); g[v].pb(u); } for(int i=1;i<=n;i++){ cin>>h[i]; } int q; cin>>q; while(q--){ int type,x,d,w; cin>>type; if(type==1){ cin>>x>>d>>w; queue <int> q; vector <int> dis(n+1,-1); q.push(x); dis[x]=0; while(!q.empty()){ int v=q.front(); q.pop(); for(auto to : g[v]){ if(dis[to]==-1){ dis[to]=dis[v]+1; q.push(to); } } } for(int i=1;i<=n;i++){ if(dis[i]<=d){ h[i]=(h[i]*w)%l; } } } else{ cin>>x; cout<<h[x]<<"\n"; } } }
#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...