#include <iostream>
#include <stack>
using namespace std;
string reverse(string s) {
stack<char> st;
// Push all characters onto the stack
for (char c : s)
st.push(c);
// Pop characters to form reversed string
string res;
while (!st.empty()) {
res += st.top();
st.pop();
}
return res;
}
int main() {
string s = "geeksforgeeks";
cout << s << endl;
cout << reverse(s) << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RhY2s+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpzdHJpbmcgcmV2ZXJzZShzdHJpbmcgcykgewogICAgc3RhY2s8Y2hhcj4gc3Q7CiAgICAKICAgIC8vIFB1c2ggYWxsIGNoYXJhY3RlcnMgb250byB0aGUgc3RhY2sKICAgIGZvciAoY2hhciBjIDogcykKICAgICAgICBzdC5wdXNoKGMpOwogICAgCiAgICAvLyBQb3AgY2hhcmFjdGVycyB0byBmb3JtIHJldmVyc2VkIHN0cmluZwogICAgc3RyaW5nIHJlczsKICAgIHdoaWxlICghc3QuZW1wdHkoKSkgewogICAgICAgIHJlcyArPSBzdC50b3AoKTsKICAgICAgICBzdC5wb3AoKTsKICAgIH0KICAgIHJldHVybiByZXM7Cn0KCmludCBtYWluKCkgewogICAgc3RyaW5nIHMgPSAiZ2Vla3Nmb3JnZWVrcyI7CiAgICBjb3V0IDw8IHMgPDwgZW5kbDsKICAgIGNvdXQgPDwgcmV2ZXJzZShzKSA8PCBlbmRsOwogICAgcmV0dXJuIDA7Cn0=