Submission #1098841

#TimeUsernameProblemLanguageResultExecution timeMemory
1098841not_amirStranded Far From Home (BOI22_island)C++14
0 / 100
1 ms348 KiB
#include <bits/stdc++.h> using namespace std; typedef pair<int, int> pii; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int n, m; cin >> n >> m; vector<pii> village(n); vector<vector<int>> G(n + 1); vector<int> parent(n + 1), vsize(n + 1); for(int i = 1; i <= n; i++) { int a; cin >> a; village[i] = {a, i}; parent[i] = i; } sort(village.begin(), village.end()); for(int i = 1; i <= m; i++) { int a, b; cin >> a >> b; G[a].push_back(b); G[b].push_back(a); } vector<bool> visited(n + 1); for(auto [vs, v] : village) { vsize[v] = vs; visited[v] = true; for(int u : G[v]) { if(!visited[u]) continue; while(u != parent[u]) u = parent[u] = parent[parent[u]]; if(u == v) continue; vsize[v] += vsize[u]; if(vsize[u] >= vs) parent[u] = v; } } int v = village.back().second; while(v != parent[v]) v = parent[v] = parent[parent[v]]; for(int i = 1; i <= n; i++) { int u = i; while(u != parent[u]) u = parent[u] = parent[parent[u]]; if(u == v) cout << '1'; else cout << '0'; } }

Compilation message (stderr)

island.cpp: In function 'int main()':
island.cpp:28:14: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   28 |     for(auto [vs, v] : village) {
      |              ^
#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...