Submission #628136

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
6281362022-08-13 06:01:56Cross_RatioRarest Insects (IOI22_insects)C++17
100 / 100
62 ms1404 KiB
//#include "insects.h"
#include <bits/stdc++.h>
using namespace std;
map<int,set<int>> MS;
void move_inside(int);
void move_outside(int);
int press_button();
int min_cardinality(int N) {
int i, j;
set<int> S, S2;
vector<int> V;
for(i=0;i<N;i++)V.push_back(i);
random_shuffle(V.begin(),V.end());
move_inside(V[0]);
S.insert(V[0]);
int k = 0;
int id = -1, v = -1;
for(j=1;j<N;j++) {
i = V[j];
move_inside(i);
S.insert(i);
int c = press_button();
if(c >= 2&&j!=N-1) {
move_outside(i);
S.erase(i);
}
if(j==N-1) {
k = S.size();
if(c>=2) {
id = V[N-1];
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

insects.cpp: In function 'int min_cardinality(int)':
insects.cpp:55:24: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   55 |             if(S.size()==k*mid) break;
      |                ~~~~~~~~^~~~~~~
insects.cpp:57:20: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   57 |         if(S.size()==k*mid) break;
      |            ~~~~~~~~^~~~~~~
insects.cpp:62:20: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   62 |         if(S.size()==k*mid) {
      |            ~~~~~~~~^~~~~~~
insects.cpp:68:28: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   68 |                 if(S.size()==k*mid) break;
      |                    ~~~~~~~~^~~~~~~
insects.cpp:81:32: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   81 |                     if(S.size()==k*mid) break;
      |                        ~~~~~~~~^~~~~~~
insects.cpp:83:28: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   83 |                 if(S.size()==k*mid) break;
      |                    ~~~~~~~~^~~~~~~
insects.cpp:128:32: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  128 |                     if(S.size()==k*mid) break;
      |                        ~~~~~~~~^~~~~~~
insects.cpp:130:28: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  130 |                 if(S.size()==k*mid) break;
      |                    ~~~~~~~~^~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...