Submission #1072847

# Submission time Handle Problem Language Result Execution time Memory
1072847 2024-08-24T05:47:28 Z Cyanberry Minerals (JOI19_minerals) C++14
0 / 100
3 ms 344 KB
#include <bits/stdc++.h>
using namespace std;
#include "minerals.h"
void Solve(int types) {
    bool side[types * 2];
    int sT[types], sF[types], match[types * 2], limits[types * 2];
    for (int i=0; i<types * 2; ++i) {
        side[i] = false;
        match[i] = 0;
    }
    int last = 0, sTc = 0, sFc = 0;
    for (int i=0; i<types * 2; ++i) {
        int curr = Query(i+1);
        if (curr > last) {
            ++last;
            sT[sTc] = i+1;
            ++sTc;
            side[i] = true;
        } else {
            sF[sFc] = i+1;
            ++sFc;
            limits[i] = sTc;
        }
    }
    bool inside[types];
    for (int i = 0; i < types; ++i) {
        inside[i] = true;
    }
    for (int i = log2(types); i >= 0; --i) {
        // for (int i : match) {
        //     cerr<<i<<' ';
        // }
        // cerr<<'\n';
        for (int j = 1; j <= types; ++j) {
            if (((j & (1<<i)) > 0) == inside[j]) {
                last = Query(sT[j]);
                inside[j] = !inside[j];
            }
        }
        for (int j =0; j < types; ++j) {
            //if (j > limits[sF[j]-1]) continue;
            int curr = Query(sF[j]);
            if (curr != last) {
                match[sF[j]-1] |= (1<<i);
                last = curr;
            }
        }
    }
    for (int i = 0; i < types * 2; ++i) {
        if (!side[i]) {
            cerr<<match[i]<<' ';
            Answer(i+1, sT[match[i]]);
        }
    }
}

Compilation message

minerals.cpp: In function 'void Solve(int)':
minerals.cpp:6:49: warning: variable 'limits' set but not used [-Wunused-but-set-variable]
    6 |     int sT[types], sF[types], match[types * 2], limits[types * 2];
      |                                                 ^~~~~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Incorrect 0 ms 344 KB Wrong Answer [1]
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 340 KB Output is correct
2 Incorrect 1 ms 344 KB Wrong Answer [1]
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Incorrect 0 ms 344 KB Wrong Answer [1]
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Incorrect 0 ms 344 KB Wrong Answer [1]
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Incorrect 0 ms 344 KB Wrong Answer [1]
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Incorrect 0 ms 344 KB Wrong Answer [1]
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Incorrect 0 ms 344 KB Wrong Answer [1]
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Incorrect 0 ms 344 KB Wrong Answer [1]
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Incorrect 0 ms 344 KB Wrong Answer [1]
4 Halted 0 ms 0 KB -