Submission #772370

#TimeUsernameProblemLanguageResultExecution timeMemory
772370phoebeBridges (APIO19_bridges)C++17
13 / 100
3061 ms14632 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define ll long long #define pii pair<int, int> #define F first #define S second #define FOR(i, n) for (int i = 0; i < n; i++) #define PB push_back #define ALL(x) x.begin(), x.end() #define NYOOM ios::sync_with_stdio(0); cin.tie(0); // solving ST 4: offline query const int maxn = 1e5 + 10; int n, m, u[maxn], v[maxn], d[maxn], q; vector<int> adj[maxn]; // idx set<int> seen; void dfs(int s, int w){ seen.insert(s); for (auto idx : adj[s]){ int t = (s == u[idx] ? v[idx] : u[idx]); if (seen.count(t) || d[idx] < w) continue; dfs(t, w); } } signed main(){ NYOOM; cin >> n >> m; for (int i = 1; i <= m; i++){ cin >> u[i] >> v[i] >> d[i]; adj[u[i]].PB(i); adj[v[i]].PB(i); } cin >> q; FOR(i, q){ int t; cin >> t; if (t == 1){ int b, r; cin >> b >> r; d[b] = r; } if (t == 2){ int s, w; cin >> s >> w; seen.clear(); dfs(s, w); cout << seen.size() << endl; } } }
#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...