Submission #928077

# Submission time Handle Problem Language Result Execution time Memory
928077 2024-02-15T20:15:54 Z EJIC_B_KEDAX Carnival Tickets (IOI20_tickets) C++17
11 / 100
1 ms 860 KB
#include <bits/stdc++.h>
#include "tickets.h"

using ll = long long;

using namespace std;

ll find_maximum(int k, vector<vector<int>> t) {
    int n = t.size(), m = t[0].size();
    vector<int> all;
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++) {
            all.push_back(t[i][j]);
        }
    }
    sort(all.begin(), all.end());
    int middle = all[all.size() / 2];
    ll res = 0;
    vector<pair<ll, int>> a(n);
    vector<int> bg(n, 0), end(n, m - 1);
    vector<vector<int>> s(n, vector<int>(m, -1));
    for (int i = 0; i < n; i++) {
        a[i].first = 0;
        a[i].second = i;
        for (int j = 0; j < m; j++) {
            t[i][j] -= middle;
        }
        a[i].first = t[i][m - 1];
    }
    for (int r = 0; r < k; r++) {
        vector<int> nw;
        sort(a.begin(), a.end());
        for (int i = 0; i < n / 2; i++) {
            nw.push_back(t[a[i].second][bg[a[i].second]]);
            s[a[i].second][bg[a[i].second]++] = r;
        }
        for (int i = n / 2; i < n; i++) {
            a[i].first = t[a[i].second][end[a[i].second] - 1];
            nw.push_back(t[a[i].second][end[a[i].second]]);
            s[a[i].second][end[a[i].second]--] = r;
        }
        for (int i : nw) {
            res += abs(i);
        }
        assert(0 >= nw[n / 2 - 1] && 0 <= nw[n / 2]);
    }
    allocate_tickets(s);
    return res;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 1 ms 348 KB Output is correct
6 Correct 1 ms 860 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Incorrect 0 ms 348 KB Contestant returned 4550041251 while correct return value is 4564307189.
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 348 KB Contestant returned 4 while correct return value is 6.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 1 ms 348 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 1 ms 344 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 1 ms 344 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 1 ms 348 KB Output is correct
6 Correct 1 ms 860 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Incorrect 0 ms 348 KB Contestant returned 4550041251 while correct return value is 4564307189.
10 Halted 0 ms 0 KB -