제출 #346106

#제출 시각아이디문제언어결과실행 시간메모리
346106teehandsome버섯 세기 (IOI20_mushrooms)C++14
25 / 100
129 ms384 KiB
#include "mushrooms.h" #include <bits/stdc++.h> using namespace std; int addA[4]={2,1,1,0}; int addB[4]={0,1,1,2}; int count_mushrooms(int n) { if(n<=5) { int ans=1; vector<int> temp; temp.push_back(0); for(int i=1;i<n;i++) { temp.push_back(i); if(!use_machine(temp)) ans++; temp.pop_back(); } return ans; } int ans=1; vector<int> a={0,1}; int t1=use_machine(a); a={0,2}; int t2=use_machine(a); if(!t1) ans++; if(!t2) ans++; int s1,s2; bool isA; if(!t1) { s1=0,s2=1; isA=true; } else if(!t2) { s1=0,s2=2; isA=true; } else { s1=1,s2=2; isA=false; } int cur=3; if(n%2==0) { cur++; a={0,3}; int t3=use_machine(a); if(!t3) ans++; } for(int i=cur;i<n;i+=2) { vector<int> temp; temp.push_back(s1); temp.push_back(i); temp.push_back(s2); temp.push_back(i+1); int res=use_machine(temp); if(isA) ans+=addA[res]; else ans+=addB[res]; } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...