제출 #477233

#제출 시각아이디문제언어결과실행 시간메모리
477233wiktoria_bazanPipes (BOI13_pipes)C++14
35 / 100
265 ms33440 KiB
#include <iostream> #include <vector> #include <map> using namespace std; int const N = 1e5 + 9; int C[N], C2[N], X[N]; bool odw[N]; vector<int> G[N]; bool t = true; map<pair<int, int>, int> M; pair<int, int> T[N]; void dfs(int v) { odw[v] = 1; bool k = true; for (int i = 0; i < G[v].size(); i++) { int syn = G[v][i]; if (odw[syn] == 0) { dfs(syn); C2[v] += C[syn]; M[{v, syn}] = C[syn] * 2; M[{syn, v}] = C[syn] * 2; k = false; } } if (k == true) C2[v] = C[v]; } void task1(int n, int m) { dfs(1); for (int i = 0; i < n; i++) { if (C[i] != C2[i]) { cout << "0\n"; return; } } for (int i = 0; i < m; i++) { cout << M[T[i]] << "\n"; } return; } int main() { int n, m; cin >> n >> m; for (int i = 1; i <= n; i++) cin >> C[i]; for (int i = 0; i < m; i++) { int a, b; cin >> a >> b; G[a].push_back(b); G[b].push_back(a); T[i] = { a, b }; } task1(n, m); //podzadanie za 30 }

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

pipes.cpp: In function 'void dfs(int)':
pipes.cpp:17:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |     for (int i = 0; i < G[v].size(); i++) {
      |                     ~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...