Submission #1270832

#TimeUsernameProblemLanguageResultExecution timeMemory
1270832trideserStranded Far From Home (BOI22_island)C++20
0 / 100
1093 ms12704 KiB
#include <bits/stdc++.h> using namespace std; int main() { int N, M; cin >> N >> M; vector<int> vals(N); for(int i = 0; i < N; i++) cin >> vals[i]; vector<vector<int>> roads(N, vector<int>()); for(int i = 0; i < M; i++) { int a, b; cin >> a >> b; a--; b--; roads[a].push_back(b); roads[b].push_back(a); } for(int i = 0; i < N; i++) { vector<bool> visited(N, false); visited[i] = true; long long current = vals[i]; priority_queue<pair<int, int>> q; for(int a : roads[i]) q.push(make_pair(-vals[a], a)); bool bb = true; while(!q.empty()) { int cost, vertex; tie(cost, vertex) = q.top(); cost = -cost; q.pop(); if(cost > current) { bb = false; break; } current += cost; for(int a : roads[vertex]) { if(visited[a]) continue; q.push(make_pair(-vals[a], a)); visited[a] = true; } } cout << bb; } return 0; }
#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...