Submission #906551

#TimeUsernameProblemLanguageResultExecution timeMemory
906551ItamarBridges (APIO19_bridges)C++14
0 / 100
3063 ms22868 KiB
#include <iostream> using namespace std; #include <vector> #define vi vector<int> #define ll long long #include <algorithm> #include <set> #include <string> #include <bitset> #include <cmath> #include <math.h> #define pll pair<ll,ll> #define vll vector<ll> #define pi pair<int,int> #include <map> #include <queue> #define x first #define y second #define pd pair<double,double> const int siz = 1e5 + 1; int ans[siz]; vi ed[siz]; pi q1[siz], q2[siz]; set<pi> fr[siz]; void dfs(int i, int b,bitset<siz>&v) { if (v[i])return; v[i] = 1; for (pi f : fr[i]) { if (f.y >= b) { dfs(f.x,b,v); } } } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int n, m; cin >> n >> m; for (int i = 0; i < m; i++) { int u, v, d; cin >> u >> v >> d; u--, v--; fr[u].insert({ v,d }); fr[v].insert({ u,d }); ed[i] = { d,u,v }; } int q; cin >> q; for (int i = 0; i < q; i++) { int t,a,b; cin >> t>>a>>b; a--; if (t == 1) { vi v = ed[a]; b--; fr[v[1]].erase({ v[2],v[0]}); fr[v[2]].erase({ v[1],v[0] }); fr[v[1]].insert({ v[2],b }); fr[v[2]].insert({ v[1],b }); ed[a][0] = b; } else { bitset<siz> v; dfs(a, b,v); cout << v.count()<<"\n"; } } //for (int i = 0; i < q; i++)cout << ans[i] << "\n"; } // Run program: Ctrl + F5 or Debug > Start Without Debugging menu // Debug program: F5 or Debug > Start Debugging menu // Tips for Getting Started: // 1. Use the Solution Explorer window to add/manage files // 2. Use the Team Explorer window to connect to source control // 3. Use the Output window to see build output and other messages // 4. Use the Error List window to view errors // 5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project // 6. In the future, to open this project again, go to File > Open > Project and select the .sln file
#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...