# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
696898 | feilinlp | Team Contest (JOI22_team) | C++17 | 1 ms | 288 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <cstdio>
#include <algorithm>
#include <utility>
#define f first
#define s second
using namespace std;
bool comp (pair <int, int> a, pair <int, int> b)
{
return a.f > b.f;
}
int main()
{
int n;
scanf("%d", &n);
pair <int, int> x[n], y[n], z[n];
bool eliminated[n];
for (int i=0; i<n; i++)
{
scanf("%d %d %d", &x[i].f, &y[i].f, &z[i].f);
x[i].s=i;
y[i].s=i;
z[i].s=i;
eliminated[i]=false;
}
sort(x, x+n, comp);
sort(y, y+n, comp);
sort(z, z+n, comp);
int posx=0, posy=0, posz=0, ans=-1;
while (posx < n && posy < n && posz < n)
{
if (x[posx].s==y[posy].s && x[posx].s==z[posz].s)
{
eliminated[x[posx].s]=true;
posx++;
posy++;
posz++;
}
if (x[posx].s==y[posy].s)
{
eliminated[x[posx].s]=true;
posx++;
posy++;
}
else if (x[posx].s==z[posz].s)
{
eliminated[x[posx].s]=true;
posx++;
posz++;
}
else if (z[posz].s==y[posy].s)
{
eliminated[y[posy].s]=true;
}
else if (!eliminated[x[posx].s] && !eliminated[y[posy].s] && !eliminated[z[posz].s])
{
ans=x[posx].f + y[posy].f + z[posz].f;
break;
}
while (posx < n && eliminated[x[posx].s])
posx++;
while (posy < n && eliminated[y[posy].s])
posy++;
while (posz < n && eliminated[z[posz].s])
posz++;
}
printf("%d\n", ans);
}
Compilation message (stderr)
# | 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... |