Submission #253549

# Submission time Handle Problem Language Result Execution time Memory
253549 2020-07-28T08:07:21 Z SorahISA Bridges (APIO19_bridges) C++17
13 / 100
49 ms 5376 KB
#include <bits/stdc++.h>
using namespace std;

#define int int64_t
#define double long double
using pii = pair<int, int>;
template<typename T>
using Prior = priority_queue<T>;
template<typename T>
using prior = priority_queue<T, vector<T>, greater<T>>;

#define X first
#define Y second
#define ALL(x) (x).begin(), (x).end()
#define eb emplace_back
#define pb push_back
#define fastIO() ios_base::sync_with_stdio(false), cin.tie(0)

struct Edge {
    int u, v, w;
};

const int maxn = 1000 + 5;

vector<pii> adj[maxn];
vector<int> vis(maxn);

void dfs(int now, int wei, int &cnt, int id) {
    ++cnt, vis[now] = id;
    for (auto x : adj[now]) {
        if (x.Y >= wei and vis[x.X] != id) dfs(x.X, wei, cnt, id);
    }
}

int32_t main() {
    fastIO();
    
    int n, m, q;
    cin >> n >> m;
    
    vector<Edge> edge(m);
    for (auto &e : edge) {
        cin >> e.u >> e.v >> e.w;
        adj[e.u].eb(e.v, e.w);
        adj[e.v].eb(e.u, e.w);
    }
    
    cin >> q;
    
    for (int i = 1; i <= q; ++i) {
        int op, st, wi;
        cin >> op >> st >> wi;
        
        if (op == 1) {
            --st;
            for (auto &x : adj[edge[st].u]) {
                if (x.X == edge[st].v and x.Y == edge[st].w) {x.Y = wi; break;}
            }
            for (auto &x : adj[edge[st].v]) {
                if (x.X == edge[st].u and x.Y == edge[st].w) {x.Y = wi; break;}
            }
            edge[st].w = wi;
        }
        if (op == 2) {
            int cnt = 0;
            dfs(st, wi, cnt, i);
            cout << cnt << "\n";
        }
    }
    
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 49 ms 512 KB Output is correct
4 Correct 4 ms 384 KB Output is correct
5 Correct 7 ms 384 KB Output is correct
6 Correct 6 ms 384 KB Output is correct
7 Correct 5 ms 384 KB Output is correct
8 Correct 5 ms 384 KB Output is correct
9 Correct 6 ms 384 KB Output is correct
10 Correct 4 ms 384 KB Output is correct
11 Correct 4 ms 384 KB Output is correct
12 Correct 5 ms 384 KB Output is correct
13 Correct 7 ms 384 KB Output is correct
14 Correct 6 ms 384 KB Output is correct
15 Correct 7 ms 384 KB Output is correct
16 Correct 5 ms 384 KB Output is correct
17 Correct 6 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Runtime error 3 ms 3072 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 3 ms 2176 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 5 ms 5376 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 3 ms 3072 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 49 ms 512 KB Output is correct
4 Correct 4 ms 384 KB Output is correct
5 Correct 7 ms 384 KB Output is correct
6 Correct 6 ms 384 KB Output is correct
7 Correct 5 ms 384 KB Output is correct
8 Correct 5 ms 384 KB Output is correct
9 Correct 6 ms 384 KB Output is correct
10 Correct 4 ms 384 KB Output is correct
11 Correct 4 ms 384 KB Output is correct
12 Correct 5 ms 384 KB Output is correct
13 Correct 7 ms 384 KB Output is correct
14 Correct 6 ms 384 KB Output is correct
15 Correct 7 ms 384 KB Output is correct
16 Correct 5 ms 384 KB Output is correct
17 Correct 6 ms 384 KB Output is correct
18 Runtime error 3 ms 3072 KB Execution killed with signal 11 (could be triggered by violating memory limits)
19 Halted 0 ms 0 KB -