제출 #1095111

#제출 시각아이디문제언어결과실행 시간메모리
1095111vjudge1다리 (APIO19_bridges)C++17
0 / 100
52 ms7780 KiB
#include <iostream> #include <vector> #include <algorithm> #include <cassert> #warning That's not the baby, that's my baby #define debug(x) #x << " = " << x << '\n' using ll = long long; const int INF = 1e9; const int NMAX = 5e4; struct Edge { int u, v, w; bool operator < (const Edge &other) const { return w > other.w; }; }; struct Query { int index, u, w; bool operator < (const Query &other) const { return w > other.w; }; }; int p[NMAX + 1]; int sz[NMAX + 1]; int root(int u) { return p[u] == u? u : p[u] = root(p[u]); } void join(int u, int v) { u = root(u); v = root(v); if (u != v) { if (sz[u] > sz[v]) { std::swap(u, v); } p[u] = v; sz[v] += sz[u]; } } int main() { std::ios_base::sync_with_stdio(false); std::cin.tie(0); std::cout.tie(0); #ifdef LOCAL freopen("input.txt", "r", stdin); #endif int n, m; std::cin >> n >> m; for (int i = 1; i <= n; i++) { p[i] = i; sz[i] = 1; } std::vector<Edge> e(m); for (auto &[u, v, w] : e) { std::cin >> u >> v >> w; } std::sort(e.begin(), e.end()); int q; std::cin >> q; std::vector<Query> Q(q); for (int i = 0; i < q; i++) { int type; std::cin >> type; Q[i].index = i; std::cin >> Q[i].u >> Q[i].w; if (type == 1) { Q[i].w = INF; } } std::sort(Q.begin(), Q.end()); std::vector<int> answer(q, 0); for (int i = 0, j = 0; i < m && j < q;) { if (e[i].w >= Q[j].w) { join(e[i].u, e[i].v); i++; } else { answer[Q[j].index] = sz[root(Q[j].u)]; j++; } } for (int i = 0; i < q; i++) { std::cout << answer[i] << '\n'; } return 0; }

컴파일 시 표준 에러 (stderr) 메시지

bridges.cpp:5:2: warning: #warning That's not the baby, that's my baby [-Wcpp]
    5 | #warning That's not the baby, that's my baby
      |  ^~~~~~~
#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...