Submission #892274

#TimeUsernameProblemLanguageResultExecution timeMemory
892274vjudge1Team Contest (JOI22_team)C++17
100 / 100
164 ms19368 KiB
#include <bits/stdc++.h> #define int long long #define all(x) x.begin(),x.end() #define ff first #define ss second #define pb push_back using namespace std; signed main(){ int n; cin>>n; vector <int> x(n),y(n),z(n); vector <pair <int,int> > v1,v2,v3; for(int i=0;i<n;i++){ cin>>x[i]>>y[i]>>z[i]; v1.pb({x[i],i}); v2.pb({y[i],i}); v3.pb({z[i],i}); } sort(all(v1)); sort(all(v2)); sort(all(v3)); int pp1=n-1,pp2=n-1,pp3=n-1; while(pp1>=0 && pp2>=0 && pp3>=0){ //cout<<pp1<<" "<<pp2<<" "<<pp3<<"\n"; int p1=v1[pp1].ss; int p2=v2[pp2].ss; int p3=v3[pp3].ss; if(y[p1]>=v2[pp2].ff or z[p1]>=v3[pp3].ff)pp1--; else if(x[p2]>=v1[pp1].ff or z[p2]>=v3[pp3].ff)pp2--; else if(x[p3]>=v1[pp1].ff or y[p3]>=v2[pp2].ff)pp3--; else { cout<<x[p1]+y[p2]+z[p3]<<'\n'; return 0; } } cout<<"-1\n"; }
#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...