Submission #250101

# Submission time Handle Problem Language Result Execution time Memory
250101 2020-07-17T02:50:40 Z dwsc Minerals (JOI19_minerals) C++14
40 / 100
58 ms 3092 KB
#include "minerals.h"
#include <bits/stdc++.h>
using namespace std;
void solve(vector<int> v1,vector<int> v2){
    if (v1.size() == 1){
        Answer(v1[0],v2[0]);
        return;
    }
    random_shuffle(v1.begin(),v1.end());
    random_shuffle(v2.begin(),v2.end());
    int stop = v1.size()/2;
    vector<int> v1a,v1b,v2a,v2b;
    int num;
    for (int i = 0; i < v1.size(); i++){
        if (i < stop){
            v1a.push_back(v1[i]);
        }
        else{
            num = Query(v1[i]);
            v1b.push_back(v1[i]);
        }
    }
    for (int i = 0; i < v2.size(); i++){
        if (v2a.size() == stop){
            v2b.push_back(v2[i]);
            continue;
        }
        if (v2b.size() == v2.size()-stop){
            v2a.push_back(v2[i]);
            continue;
        }
        if (Query(v2[i]) == num){
            v2a.push_back(v2[i]);
        }
        else v2b.push_back(v2[i]);
        Query(v2[i]);
    }
    for (int i = 0; i < v1b.size(); i++) Query(v1b[i]);
    solve(v1a,v2a);
    solve(v1b,v2b);
}
void Solve(int N) {
    vector<int> v1,v2;
    int num = 0;
    for (int i = 1; i <= 2*N; i++){
        int temp = Query(i);
        if (temp > num){
            num++;
            v1.push_back(i);
        }
        else{
            v2.push_back(i);
        }
    }
    solve(v1,v2);
}

Compilation message

minerals.cpp: In function 'void solve(std::vector<int>, std::vector<int>)':
minerals.cpp:14:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int i = 0; i < v1.size(); i++){
                     ~~^~~~~~~~~~~
minerals.cpp:23:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int i = 0; i < v2.size(); i++){
                     ~~^~~~~~~~~~~
minerals.cpp:24:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if (v2a.size() == stop){
             ~~~~~~~~~~~^~~~~~~
minerals.cpp:38:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int i = 0; i < v1b.size(); i++) Query(v1b[i]);
                     ~~^~~~~~~~~~~~
minerals.cpp:32:9: warning: 'num' may be used uninitialized in this function [-Wmaybe-uninitialized]
         if (Query(v2[i]) == num){
         ^~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Output is correct
2 Correct 4 ms 512 KB Output is correct
3 Correct 8 ms 640 KB Output is correct
4 Correct 15 ms 896 KB Output is correct
5 Correct 30 ms 1396 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 4 ms 512 KB Output is correct
7 Correct 8 ms 640 KB Output is correct
8 Correct 15 ms 896 KB Output is correct
9 Correct 30 ms 1396 KB Output is correct
10 Correct 2 ms 384 KB Output is correct
11 Correct 21 ms 1152 KB Output is correct
12 Correct 34 ms 1408 KB Output is correct
13 Correct 31 ms 1580 KB Output is correct
14 Correct 33 ms 1408 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 4 ms 512 KB Output is correct
7 Correct 8 ms 640 KB Output is correct
8 Correct 15 ms 896 KB Output is correct
9 Correct 30 ms 1396 KB Output is correct
10 Correct 2 ms 384 KB Output is correct
11 Correct 21 ms 1152 KB Output is correct
12 Correct 34 ms 1408 KB Output is correct
13 Correct 31 ms 1580 KB Output is correct
14 Correct 33 ms 1408 KB Output is correct
15 Incorrect 58 ms 3092 KB Wrong Answer [2]
16 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 4 ms 512 KB Output is correct
7 Correct 8 ms 640 KB Output is correct
8 Correct 15 ms 896 KB Output is correct
9 Correct 30 ms 1396 KB Output is correct
10 Correct 2 ms 384 KB Output is correct
11 Correct 21 ms 1152 KB Output is correct
12 Correct 34 ms 1408 KB Output is correct
13 Correct 31 ms 1580 KB Output is correct
14 Correct 33 ms 1408 KB Output is correct
15 Incorrect 58 ms 3092 KB Wrong Answer [2]
16 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 4 ms 512 KB Output is correct
7 Correct 8 ms 640 KB Output is correct
8 Correct 15 ms 896 KB Output is correct
9 Correct 30 ms 1396 KB Output is correct
10 Correct 2 ms 384 KB Output is correct
11 Correct 21 ms 1152 KB Output is correct
12 Correct 34 ms 1408 KB Output is correct
13 Correct 31 ms 1580 KB Output is correct
14 Correct 33 ms 1408 KB Output is correct
15 Incorrect 58 ms 3092 KB Wrong Answer [2]
16 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 4 ms 512 KB Output is correct
7 Correct 8 ms 640 KB Output is correct
8 Correct 15 ms 896 KB Output is correct
9 Correct 30 ms 1396 KB Output is correct
10 Correct 2 ms 384 KB Output is correct
11 Correct 21 ms 1152 KB Output is correct
12 Correct 34 ms 1408 KB Output is correct
13 Correct 31 ms 1580 KB Output is correct
14 Correct 33 ms 1408 KB Output is correct
15 Incorrect 58 ms 3092 KB Wrong Answer [2]
16 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 4 ms 512 KB Output is correct
7 Correct 8 ms 640 KB Output is correct
8 Correct 15 ms 896 KB Output is correct
9 Correct 30 ms 1396 KB Output is correct
10 Correct 2 ms 384 KB Output is correct
11 Correct 21 ms 1152 KB Output is correct
12 Correct 34 ms 1408 KB Output is correct
13 Correct 31 ms 1580 KB Output is correct
14 Correct 33 ms 1408 KB Output is correct
15 Incorrect 58 ms 3092 KB Wrong Answer [2]
16 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 4 ms 512 KB Output is correct
7 Correct 8 ms 640 KB Output is correct
8 Correct 15 ms 896 KB Output is correct
9 Correct 30 ms 1396 KB Output is correct
10 Correct 2 ms 384 KB Output is correct
11 Correct 21 ms 1152 KB Output is correct
12 Correct 34 ms 1408 KB Output is correct
13 Correct 31 ms 1580 KB Output is correct
14 Correct 33 ms 1408 KB Output is correct
15 Incorrect 58 ms 3092 KB Wrong Answer [2]
16 Halted 0 ms 0 KB -