답안 #947058

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
947058 2024-03-15T12:51:11 Z onepunchac168 Minerals (JOI19_minerals) C++14
6 / 100
20 ms 2136 KB
#include "minerals.h"
#include <bits/stdc++.h>
using namespace std;

int query(int x)
{
    return Query(x);
}
mt19937 mt(19779777);
void solve(vector <int> need,bool check)
{
    if (need.size()==2)
    {
        if (check==1)
        {
            int aa=query(need[0]);
            int bb=query(need[1]);
        }
        Answer(need[0],need[1]);
        return;
    }
    if (need.size()<=1)
    {
        assert(1==0);
    }
    shuffle (need.begin(),need.end(),mt);
    vector <int> aa,bb;
    int rr=need.size()/4;
    if (need.size()>=20)
    {
        rr=need.size()/10;
    }
    if (check==0)
    {
        for (int i=0;i<need.size();i++)
        {
            if (aa.size()==2*rr)
            {
                bb.push_back(need[i]);
                continue;
            }
            int a1=query(need[i]);
            //cout<<a1<<'\n';
            if (a1<=rr)
            {
                aa.push_back(need[i]);
            }
            else
            {
                int a2=query(need[i]);
                bb.push_back(need[i]);
            }
        }
        solve(aa,1);
        solve(bb,0);
    }
    else
    {
        for (int i=rr;i<need.size();i++)
        {
            int a1=query(need[i]);
        }
        for (int i=0;i<rr;i++)
        {
            aa.push_back(need[i]);
        }
        for (int i=rr;i<need.size();i++)
        {
            if (aa.size()==2*rr)
            {
                bb.push_back(need[i]);
                continue;
            }
            int a1=query(need[i]);
            if (a1<=rr)
            {
                aa.push_back(need[i]);
            }
            else
            {
                int a2=query(need[i]);
                bb.push_back(need[i]);
            }
        }
        solve(aa,1);
        solve(bb,0);
    }
}
void Solve(int n)
{
    vector <int > opt;
    for (int i=1;i<=2*n;i++)
    {
        opt.push_back(i);
    }
    solve(opt,0);
}

Compilation message

minerals.cpp: In function 'void solve(std::vector<int>, bool)':
minerals.cpp:16:17: warning: unused variable 'aa' [-Wunused-variable]
   16 |             int aa=query(need[0]);
      |                 ^~
minerals.cpp:17:17: warning: unused variable 'bb' [-Wunused-variable]
   17 |             int bb=query(need[1]);
      |                 ^~
minerals.cpp:35:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   35 |         for (int i=0;i<need.size();i++)
      |                      ~^~~~~~~~~~~~
minerals.cpp:37:26: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   37 |             if (aa.size()==2*rr)
      |                 ~~~~~~~~~^~~~~~
minerals.cpp:50:21: warning: unused variable 'a2' [-Wunused-variable]
   50 |                 int a2=query(need[i]);
      |                     ^~
minerals.cpp:59:24: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   59 |         for (int i=rr;i<need.size();i++)
      |                       ~^~~~~~~~~~~~
minerals.cpp:61:17: warning: unused variable 'a1' [-Wunused-variable]
   61 |             int a1=query(need[i]);
      |                 ^~
minerals.cpp:67:24: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   67 |         for (int i=rr;i<need.size();i++)
      |                       ~^~~~~~~~~~~~
minerals.cpp:69:26: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   69 |             if (aa.size()==2*rr)
      |                 ~~~~~~~~~^~~~~~
minerals.cpp:81:21: warning: unused variable 'a2' [-Wunused-variable]
   81 |                 int a2=query(need[i]);
      |                     ^~
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 2 ms 600 KB Output is correct
3 Correct 5 ms 856 KB Output is correct
4 Correct 10 ms 1448 KB Output is correct
5 Incorrect 20 ms 2136 KB Wrong Answer [2]
6 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
5 Correct 1 ms 344 KB Output is correct
6 Correct 2 ms 600 KB Output is correct
7 Correct 5 ms 856 KB Output is correct
8 Correct 10 ms 1448 KB Output is correct
9 Incorrect 20 ms 2136 KB Wrong Answer [2]
10 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
5 Correct 1 ms 344 KB Output is correct
6 Correct 2 ms 600 KB Output is correct
7 Correct 5 ms 856 KB Output is correct
8 Correct 10 ms 1448 KB Output is correct
9 Incorrect 20 ms 2136 KB Wrong Answer [2]
10 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
5 Correct 1 ms 344 KB Output is correct
6 Correct 2 ms 600 KB Output is correct
7 Correct 5 ms 856 KB Output is correct
8 Correct 10 ms 1448 KB Output is correct
9 Incorrect 20 ms 2136 KB Wrong Answer [2]
10 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
5 Correct 1 ms 344 KB Output is correct
6 Correct 2 ms 600 KB Output is correct
7 Correct 5 ms 856 KB Output is correct
8 Correct 10 ms 1448 KB Output is correct
9 Incorrect 20 ms 2136 KB Wrong Answer [2]
10 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
5 Correct 1 ms 344 KB Output is correct
6 Correct 2 ms 600 KB Output is correct
7 Correct 5 ms 856 KB Output is correct
8 Correct 10 ms 1448 KB Output is correct
9 Incorrect 20 ms 2136 KB Wrong Answer [2]
10 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
5 Correct 1 ms 344 KB Output is correct
6 Correct 2 ms 600 KB Output is correct
7 Correct 5 ms 856 KB Output is correct
8 Correct 10 ms 1448 KB Output is correct
9 Incorrect 20 ms 2136 KB Wrong Answer [2]
10 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
5 Correct 1 ms 344 KB Output is correct
6 Correct 2 ms 600 KB Output is correct
7 Correct 5 ms 856 KB Output is correct
8 Correct 10 ms 1448 KB Output is correct
9 Incorrect 20 ms 2136 KB Wrong Answer [2]
10 Halted 0 ms 0 KB -