Submission #602302

#TimeUsernameProblemLanguageResultExecution timeMemory
602302Soumya1Team Contest (JOI22_team)C++17
100 / 100
430 ms27180 KiB
#include <bits/stdc++.h> #ifdef __LOCAL__ #include <debug_local.h> #endif using namespace std; void testCase() { int n; cin >> n; vector<int> x(n), y(n), z(n); for (int i = 0; i < n; i++) cin >> x[i] >> y[i] >> z[i]; set<pair<int, int>> s1, s2, s3; for (int i = 0; i < n; i++) { s1.insert({x[i], i}); s2.insert({y[i], i}); s3.insert({z[i], i}); } int ans = -1; auto erase = [&](int i) { s1.erase({x[i], i}); s2.erase({y[i], i}); s3.erase({z[i], i}); return 1; }; while (!s1.empty()) { auto [a, i] = *s1.rbegin(); auto [b, j] = *s2.rbegin(); auto [c, k] = *s3.rbegin(); if (z[i] == c || y[i] == b) { erase(i); continue; } if (z[j] == c || x[j] == a) { erase(j); continue; } if (x[k] == a || y[k] == b) { erase(k); continue; } break; } if (s1.empty()) cout << ans << "\n"; else { auto [a, i] = *s1.rbegin(); auto [b, j] = *s2.rbegin(); auto [c, k] = *s3.rbegin(); cout << a + b + c << "\n"; } } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); testCase(); }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...