// Born_To_Laugh - Hughie Do
#include <bits/stdc++.h>
#define alle(AC) AC.begin(), AC.end()
#define fi first
#define se second
using namespace std;
typedef long long ll;
[[maybe_unused]] const ll MOD = 998244353, INF = 1e9 + 7;
const int maxn = 15e4 + 10;
int n;
vector<array<int, 3>> item(maxn);
int idx[maxn], idy[maxn], idz[maxn];
int vis[maxn];
void solve(){
cin >> n;
for(int i=1; i<=n; ++i){
cin >> item[i][0] >> item[i][1] >> item[i][2];
idx[i] = idy[i] = idz[i] = i;
}
sort(idx + 1, idx + 1 + n, [&](int a, int b){
return item[a][0] > item[b][0];
});
sort(idy + 1, idy + 1 + n, [&](int a, int b){
return item[a][1] > item[b][1];
});
sort(idz + 1, idz + 1 + n, [&](int a, int b){
return item[a][2] > item[b][2];
});
/*
sort cac index theo gia tri cua tung bien
*/
int id1 = 1, id2 = 1, id3 = 1;
/*
neu yeu cau ve y va z cua x qua cao, se giam x
*/
while(1){
int i = idx[id1];
int j = idy[id2];
int k = idz[id3];
if(item[i][1] == item[j][1] || item[i][2] == item[k][2]){
vis[i] = 1;
id1++;
}
if(item[j][0] == item[i][0] || item[j][2] == item[k][2]){
vis[j] = 1;
id2++;
}
if(item[k][0] == item[i][0] || item[k][1] == item[j][1]){
vis[k] = 1;
id3++;
}
if(vis[i] + vis[j] + vis[k] == 0){
cout << item[i][0] + item[j][1] + item[k][2] << '\n';
return;
}
while(vis[idx[id1]]){
id1++;
}
while(vis[idy[id2]]){
id2++;
}
while(vis[idz[id3]]){
id3++;
}
if(id1 > n || id2 > n || id3 > n){
break;
}
}
cout << -1 << '\n';
}
signed main(){
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
solve();
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |