为什么会死递归,题目
#include<bits/stdc++.h>
using namespace std;
int n,result_n,k=0,a;
vector<long long>apple;
void pick(int day){
a=apple.size();
if(apple.size()>0){
for(int i=0;i<a;i=i+3){
apple.erase(apple.begin()+i);
if(i==n){
result_n=i;
}
}
sort(apple.begin(),apple.end());
for(int i=0;i<a;i++)
pick(day+1);
}
else{
cout<<result_n<<' '<<day-1;
}
}
int main(){
cin>>n;
for(long long i=1;i<=n;i++){
apple.push_back(i);
}
pick(1);
return 0;
}