Simple c++ using double recursion


#1

#include <bits/stdc++.h>

using namespace std;
stack s;
void insertatbottom(stack s, int x){
s.pop();
if(s.size()==0){
s.push(x);
return;
}
int t=s.top();
insertatbottom(s,t);
insertatbottom(s,x);
s.push(t);
}
int main()
{
int t;
cin>>t;
while(t–){
int n;
cin>>n;
int i=0;
while(i<n){
int k;
cin>>k;
s.push(k);
i++;
}
int x=s.top();
insertatbottom(s,x);
i=0;
while(i<n){
cout<<s.top()<<" ";
s.pop();
i++;
}
cout<<endl;
}
return 0;
}