Submission #601930

#TimeUsernameProblemLanguageResultExecution timeMemory
601930FatihSolakCounting Mushrooms (IOI20_mushrooms)C++17
0 / 100
1 ms208 KiB
#include "mushrooms.h" #include <bits/stdc++.h> #define N 20000 #define X 187 using namespace std; int count_mushrooms(int n){ int mini = 0; int val = 1e9; for(int i = 1;i<N;i++){ if(i-1 + (N - i + (i+1)/2 -1)/( (i+1)/2) < val){ val = i-1 + (N - i + (i+1)/2 -1)/( (i+1)/2); mini = i; } } cout << mini << " " << val << endl; if(n <= 227){ int ret = 1; for(int i = 1;i<n;i++){ ret += !(use_machine({0,i})); } return ret; } vector<int> a,b; a.push_back(0); for(int i = 1;i<=X;i++){ if(use_machine({0,i})){ b.push_back(i); } else a.push_back(i); } int ret = 0; int asz = a.size(); int bsz = b.size(); if(asz > bsz){ for(int i = X+1;i<n;i+=asz){ vector<int> nums; int cnt = 0; for(int j = i;j<min(n,i + asz);j++){ nums.push_back(a[cnt++]); nums.push_back(j); } int sz = nums.size()/2; ret += sz - (use_machine(nums) + 1)/2; } } else{ for(int i = X+1;i<n;i+=bsz){ vector<int> nums; int cnt = 0; for(int j = i;j<min(n,i + bsz);j++){ nums.push_back(b[cnt++]); nums.push_back(j); } int sz = nums.size()/2; ret += (use_machine(nums) + 1)/2; } } return ret + asz; }

Compilation message (stderr)

mushrooms.cpp: In function 'int count_mushrooms(int)':
mushrooms.cpp:55:8: warning: unused variable 'sz' [-Wunused-variable]
   55 |    int sz = nums.size()/2;
      |        ^~
#Verdict Execution timeMemoryGrader output
Fetching results...