Submission #828308

#TimeUsernameProblemLanguageResultExecution timeMemory
828308tomrukCounting Mushrooms (IOI20_mushrooms)C++17
56.93 / 100
11 ms312 KiB
#include "mushrooms.h" #include <bits/stdc++.h> using namespace std; int count_mushrooms(int n) { vector<int> a = {0},b; int last = 1; int th = 0; int val = 1e9; for(int i = 1;i<n;i++){ if(2 * i - 2 + (n + i - 1)/i < val){ th = i; val = 2 * i - 2 + (n + i - 1)/i; } } while(last < n && max(a.size(),b.size()) < th){ int num = use_machine({0,last}); if(num == 0) a.push_back(last); else b.push_back(last); last++; } int ca = 0,cb = 0; while(last < n){ if(a.size() > b.size()){ int cnt = 0; vector<int> ask; while(cnt < a.size() && last < n){ ask.push_back(last); ask.push_back(a[cnt]); cnt++; last++; } int num = use_machine(ask); ca += cnt; ca -= num/2; ca -= num&1; } else{ int cnt = 0; vector<int> ask; while(cnt < b.size() && last < n){ ask.push_back(last); ask.push_back(b[cnt]); cnt++; last++; } int num = use_machine(ask); ca += num/2; ca += num&1; } } return a.size() + ca; }

Compilation message (stderr)

mushrooms.cpp: In function 'int count_mushrooms(int)':
mushrooms.cpp:16:43: warning: comparison of integer expressions of different signedness: 'const long unsigned int' and 'int' [-Wsign-compare]
   16 |  while(last < n && max(a.size(),b.size()) < th){
      |                    ~~~~~~~~~~~~~~~~~~~~~~~^~~~
mushrooms.cpp:28:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   28 |    while(cnt < a.size() && last < n){
      |          ~~~~^~~~~~~~~~
mushrooms.cpp:42:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   42 |    while(cnt < b.size() && last < n){
      |          ~~~~^~~~~~~~~~
mushrooms.cpp:23:13: warning: unused variable 'cb' [-Wunused-variable]
   23 |  int ca = 0,cb = 0;
      |             ^~
#Verdict Execution timeMemoryGrader output
Fetching results...