Submission #1273981

#TimeUsernameProblemLanguageResultExecution timeMemory
1273981oswaldzzSprinkler (JOI22_sprinkler)C++20
0 / 100
4093 ms17476 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define nl endl #define hehe ios_base::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL) ; // const int mod = 998244353; const int mod = 1e9+7; const int M = 2e5+5; int n,l; vector < int > adj[M] = {}; int h[M] = {}; void bfs(int x, int d, int w){ queue < pair < int , pair < int , int > > > q; q.push({x,{0,0}}); while(!q.empty()){ int cur = q.front().first; int dis = q.front().second.first; int pref = q.front().second.second; // cout << cur << ' ' << dis << ' ' << pref << nl; if(dis <= d){ h[cur]*=w; h[cur]%=l; } q.pop(); if(dis > d)continue; for(auto nxt : adj[cur]){ if(nxt == pref)continue; else{ q.push({nxt,{dis+1,cur}}); } } } } void solve(){ cin >> n >> l; for(int i = 1; i<=n-1; i++){ int u,v; cin >> u >> v; adj[u].push_back(v); adj[v].push_back(u); } for(int i = 1; i<=n; i++){ cin >> h[i]; } int m; cin >> m; for(int i = 1; i<=m; i++){ int t; cin >> t; if(t==1){ int x,d,w; cin >> x >> d >> w; // bfs(x,d,w); if(d == 0){ h[x]*=w; h[x]%=l; } if(d == 1){ h[x]*=w; h[x]%=l; for(auto nxt : adj[x]){ h[nxt]*=w; h[nxt]%=l; } } // for(int j = 1; j<=n; j++){ // cout << h[j] << ' '; // }cout << nl; } else{ int x; cin >> x; cout << h[x] << nl; } } } signed main(){ hehe // int t; cin >> t; int t = 1; while(t--){ 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...