Submission #334490

#TimeUsernameProblemLanguageResultExecution timeMemory
334490inwbearCounting Mushrooms (IOI20_mushrooms)C++14
0 / 100
10 ms492 KiB
#include "mushrooms.h" #include<bits/stdc++.h> using namespace std; #define pb push_back #define all(x) (x).begin(),(x).end() #define MEM(x,a) memset((x),a,sizeof((x))) #define F first #define S second #define imx INT_MAX #define X 201 #define Y 3 const long long MOD = (long long)(1e9+7); const long long MMX = (long long)(1e18); typedef long long LL; typedef pair<int,int> pii; int count_mushrooms(int n) { int k,rr=1,ca=0; vector<int>a,b,t; a.pb(0); for(int i=1;i<n&&i<=Y;i++) { t.clear(); t.pb(0); t.pb(i); k=use_machine(t); if(k==1)b.pb(i); else a.pb(i); } if(a.size()>b.size()) { for(int i=Y+1;i<n&&i<=X;i+=2) { t.clear(); t.pb(i); t.pb(a[0]); t.pb(i+1); t.pb(a[1]); k=use_machine(t); if(k%2==1)b.pb(i); else a.pb(i); if(k>1)b.pb(i+1); else a.pb(i+1); } } else { for(int i=Y+1;i<n&&i<=X;i+=2) { t.clear(); t.pb(i); t.pb(b[0]); t.pb(i+1); t.pb(b[1]); k=use_machine(t); if(k%2==1)a.pb(i); else b.pb(i); if(k>1)a.pb(i+1); else b.pb(i+1); } } if(a.size()>b.size()) { for(int i=X+1;i<n;i++,rr++) { if(rr==1)t.clear(),t.pb(a[0]); t.pb(i); t.pb(a[rr]); if(i==n-1||rr+1==a.size()) { k=use_machine(t); ca+=rr-(k/2); rr=0; } } } else { for(int i=X+1;i<n;i++,rr++) { if(rr==1)t.clear(),t.pb(b[0]); t.pb(i); t.pb(b[rr]); if(i==n-1||rr+1==b.size()) { k=use_machine(t); rr=0; ca+=k/2; } } } return a.size()+ca; }

Compilation message (stderr)

mushrooms.cpp: In function 'int count_mushrooms(int)':
mushrooms.cpp:69:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   69 |    if(i==n-1||rr+1==a.size())
      |               ~~~~^~~~~~~~~~
mushrooms.cpp:84:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   84 |    if(i==n-1||rr+1==b.size())
      |               ~~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...