#include <bits/stdc++.h>
#include <iostream>
using namespace std;
void insertatsortstack(int element, stack<int> &s){
if(s.empty()==1 || element > s.top())
{
s.push(element);
return;
}
int temp=s.top();
s.pop();
insertatsortstack(element,s);
s.push(temp);
}
void sortstack(stack<int> &s){
if(s.size()>0){
int element=s.top();
s.pop();
sortstack(s);
insertatsortstack(element,s);
}
}
int main() {
// your code goes here
stack<int> s;
s.push(10);
s.push(8);
s.push(6);
s.push(4);
s.push(2);
while(s.size()>0)
{
cout<<" "<<s.top()<<" ";
s.pop();
}
cout<< endl;
s.push(10);
s.push(8);
s.push(6);
s.push(4);
s.push(2);
sortstack(s);
while(s.size()>0)
{
cout<<" "<<s.top()<<" ";
s.pop();
}
}
CiNpbmNsdWRlIDxiaXRzL3N0ZGMrKy5oPgojaW5jbHVkZSA8aW9zdHJlYW0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgoKdm9pZCBpbnNlcnRhdHNvcnRzdGFjayhpbnQgZWxlbWVudCwgc3RhY2s8aW50PiAmcyl7CgogICAgaWYocy5lbXB0eSgpPT0xIHx8IGVsZW1lbnQgPiBzLnRvcCgpKQogICAgewogICAgICAgIHMucHVzaChlbGVtZW50KTsKICAgICAgICByZXR1cm47CiAgICB9CgogICAgaW50IHRlbXA9cy50b3AoKTsKICAgIHMucG9wKCk7CiAgICBpbnNlcnRhdHNvcnRzdGFjayhlbGVtZW50LHMpOwogICAgcy5wdXNoKHRlbXApOwp9Cgp2b2lkIHNvcnRzdGFjayhzdGFjazxpbnQ+ICZzKXsKICAgIGlmKHMuc2l6ZSgpPjApewogICAgICAgIGludCBlbGVtZW50PXMudG9wKCk7CiAgICAgICAgcy5wb3AoKTsKICAgICAgICBzb3J0c3RhY2socyk7CiAgICAgICAgaW5zZXJ0YXRzb3J0c3RhY2soZWxlbWVudCxzKTsKICAgIH0KfQoKaW50IG1haW4oKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglzdGFjazxpbnQ+IHM7CglzLnB1c2goMTApOwoJcy5wdXNoKDgpOwoJcy5wdXNoKDYpOwoJcy5wdXNoKDQpOwoJcy5wdXNoKDIpOwoJCgl3aGlsZShzLnNpemUoKT4wKSAKCXsKCQljb3V0PDwiICI8PHMudG9wKCk8PCIgIjsKCQlzLnBvcCgpOwoJfQoJY291dDw8IGVuZGw7CglzLnB1c2goMTApOwoJcy5wdXNoKDgpOwoJcy5wdXNoKDYpOwoJcy5wdXNoKDQpOwoJcy5wdXNoKDIpOwoJCglzb3J0c3RhY2socyk7Cgl3aGlsZShzLnNpemUoKT4wKSAKCXsKCQljb3V0PDwiICI8PHMudG9wKCk8PCIgIjsKCQlzLnBvcCgpOwoJfQp9Cgo=