Submission #696897

# Submission time Handle Problem Language Result Execution time Memory
696897 2023-02-07T14:49:33 Z feilinlp Team Contest (JOI22_team) C++17
0 / 100
1 ms 340 KB
#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 (eliminated[x[posx].s])
            posx++;
        while (eliminated[y[posy].s])
            posy++;
        while (eliminated[z[posz].s])
            posz++;
    }
    printf("%d\n", ans);
}

Compilation message

team.cpp: In function 'int main()':
team.cpp:17:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   17 |     scanf("%d", &n);
      |     ~~~~~^~~~~~~~~~
team.cpp:22:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   22 |         scanf("%d %d %d", &x[i].f, &y[i].f, &z[i].f);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Runtime error 1 ms 340 KB Execution killed with signal 11
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Runtime error 1 ms 340 KB Execution killed with signal 11
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 280 KB Output is correct
2 Correct 0 ms 284 KB Output is correct
3 Runtime error 1 ms 340 KB Execution killed with signal 11
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 280 KB Output is correct
2 Correct 0 ms 284 KB Output is correct
3 Runtime error 1 ms 340 KB Execution killed with signal 11
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 280 KB Output is correct
2 Correct 0 ms 284 KB Output is correct
3 Runtime error 1 ms 340 KB Execution killed with signal 11
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 280 KB Output is correct
2 Correct 0 ms 284 KB Output is correct
3 Runtime error 1 ms 340 KB Execution killed with signal 11
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Runtime error 1 ms 340 KB Execution killed with signal 11
4 Halted 0 ms 0 KB -