제출 #910152

#제출 시각아이디문제언어결과실행 시간메모리
910152vjudge1Sprinkler (JOI22_sprinkler)C++17
3 / 100
4062 ms24900 KiB
#include <bits/stdc++.h> using namespace std; const int MAXN = 2e5 + 25; int n, l, h[MAXN]; vector <int> adj[MAXN]; void dfs (int pos, int par, int dep, int d, int w) { h[pos] = (h[pos] * 1ll * w) % l; if (dep == d) return; for (auto j : adj[pos]) if (j != par) dfs(j, pos, dep + 1, d, w); } int main () { cin >> n >> l; for (int i = 1; i < n; i++) { int a, b; cin >> a >> b; adj[a].push_back(b); adj[b].push_back(a); } for (int i = 1; i <= n; i++) cin >> h[i]; int q; cin >> q; while (q--) { int t; cin >> t; if (t == 1) { int x, d, w; cin >> x >> d >> w; dfs(x, -1, 0, d, w); } else { int x; 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...