Submission #878441

#TimeUsernameProblemLanguageResultExecution timeMemory
878441borisAngelovSprinkler (JOI22_sprinkler)C++17
3 / 100
4041 ms25248 KiB
#include <bits/stdc++.h> using namespace std; const int maxn = 200005; int n, q; long long mod; vector<int> g[maxn]; long long height[maxn]; void dfs(int node, int par, int dep, long long mult) { height[node] = (height[node] * mult) % mod; for (int i = 0; i < g[node].size(); ++i) { if (g[node][i] != par && dep >= 1) { dfs(g[node][i], node, dep - 1, mult); } } } void fastIO() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); } int main() { fastIO(); cin >> n >> mod; for (int i = 1; i <= n - 1; ++i) { int x, y; cin >> x >> y; g[x].push_back(y); g[y].push_back(x); } for (int i = 1; i <= n; ++i) { cin >> height[i]; } cin >> q; for (int i = 1; i <= q; ++i) { int type; cin >> type; if (type == 1) { int node, dist, mult; cin >> node >> dist >> mult; dfs(node, node, dist, mult); } else { int node; cin >> node; cout << height[node] << "\n"; } } return 0; }

Compilation message (stderr)

sprinkler.cpp: In function 'void dfs(int, int, int, long long int)':
sprinkler.cpp:18:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   18 |     for (int i = 0; i < g[node].size(); ++i)
      |                     ~~^~~~~~~~~~~~~~~~
#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...