Go: package main
import (
	"fmt"
	"os"
	"bufio"
)

var sc = bufio.NewScanner(os.Stdin)

func main(){
	sc.Scan()
	str := sc.Text()
	// rev_str := make([]string, len(str))
	defer fmt.Println()
	for _, v := range []rune(str){
		defer fmt.Print(string(v))
	}
}

C++: #include<iostream>
#include <fstream>
#include <stdio.h>
#include <stdlib.h>
#define _USE_MATH_DEFINES
#include <math.h>
#include<string>
#include<vector>
#include<cmath>
#include<stack>
#include<queue>
#include<sstream>
#include<algorithm>
#include<map>
#include<complex>
using namespace std;


#define li			long long int
#define rep(i,to)	for(int i=0;i<((int)(to));i++)
#define repp(i,start,to)	for(int i=(int)(start);i<((int)(to));i++)
#define pb			push_back
#define sz(v)		((li)(v).size())
#define bgn(v)		((v).begin())
#define eend(v)		((v).end())
#define allof(v)	(v).begin(), (v).end()
#define dodp(v,n)		memset(v,(li)n,sizeof(v))
#define bit(n)		(1ll<<(li)(n))
#define mp(a,b)		make_pair(a,b)
#define rin	rep(i,n)
#define EPS 1e-10
#define ETOL 1e-8
#define MOD 1000000007
#define p2(a,b)		cout<<a<<"\t"<<b<<endl
#define p3(a,b,c)		cout<<a<<"\t"<<b<<"\t"<<c<<endl


int main(){
	string s;
	cin>>s;
	rep(i,sz(s))cout<<s[sz(s)-1-i];
	
	puts("");
	return 0;
}

C++: #include<stdio.h>
#include<string.h>
int main()
{
    char a[20];
    int i;
    gets(a);

    for(i=strlen(a)-1;i>=0;i--)

    {
        printf("%C",a[i]);
   }
   return 0;
}

C++: #include<bits/stdc++.h>
using namespace std;

int main()
{
  string s;
  cin >> s;
  for(int i=0; i<(s.size()/2); i++) {
    char tmp = s[i];
    s[i] = s[s.size()-1-i];
    s[s.size()-1-i] = tmp;
  }

  cout << s << endl;
}

C++: #include <iostream>
#include <string>

int main()
{
  std::string str;
  while (std::cin >> str) {
    for (size_t  i = str.size() - 1; i != 0; --i) {
      std::cout << str[i];
    }
    std::cout << endl;
  }

  return 0;
}

C++: 
#include <algorithm>
#include <cassert>
#include <cctype>
#include <climits>
#include <cmath>
#include <complex>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <iostream>
#include <iterator>
#include <list>
#include <map>
#include <numeric>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <string>
#include <vector>

using namespace std;
string main()
{
	string s = "";
	cin >> s;
	for (int i = s.length - 1; i >= 0; i--)
	{
		cout << s[i];
	}cout << endl;
	return 0;

}

C++: #include <iostream>
#include <string> 
#include <utility>

using namespace std;
 
int main()
{ 
	string s;
	cin >> s;

	reverse(s.begin(), s.end());

	cout << s << endl;

	return 0;
}

C++: import java.util.*;


public class Main {
	public static void main(String[] args){
	
		Scanner sc = new Scanner(System. in);
		String line = sc.nextLine();
		char[] str = line.toCharArray();
		
		char[] rts = new char[20];
		
		for(int i=0;i<20;i++){
			str[20-i]=rts[i];
		}
		
		for(int i=0;i<20;i++){
		System.out.print(rts[i]);
		}
	}
}

C++: #include <iostream>

using namespace std;

int main()
{
	char sr[20];
	cin >> sr;
	for (int i = 20; i >0; i--)
	{
		if (sr[i - 1] != '\0') {
			cout << sr[i - 1];
		}
	}cout << endl;
	return 0;
}

C++: #include<iostream>
#include<string>
using namespace std;

int main()
{
    string str;
    cin >> str;
    
    for(int i=str.size()-1; i>=0; i--){
        cout << str[i];
    }
    
    cout << endl;

    return 0;
}

C++: #include <iostream>
#include <cmath>
#include <cstdio>
#include <algorithm>
#include <vector>
#include <sstream>
#include <string>
#include <cstdlib>
using namespace std;

// 一行取って、一番初めのTを習得
template <class T> int streamvar(std::istream& in, T& var)
{
    string s;
    if (!in) {
        return 1;
    }
    getline(in, s);
    istringstream is(s);
    is >> var;
    if (is.fail()) 
        return 1;
    return 0;
}
// 一行取って、T vectorに格納する
template <class T> int streamvec(std::istream& in, std::vector<T> &v)
{
    v.clear();
    string s;

    if (!in) 
        return 1;
    getline(in, s);
    if (in.fail()) 
        return 1;
    istringstream is(s);
    while (1) {
        T tmp;
        is >> tmp;
        if (is.fail())
            break;
        v.push_back(tmp);
    }
    return 0;
}

#define EPS 1e-6
int main(void)
{
    string s;
    while (cin >> s) {
        string tmp;
        for (int i = 0; i < s.length(); i++)
            tmp += s[s.length() - i - 1];
        cout << tmp;
    }
    return 0;
}

C++: #include <iostream>
#include <algorithm>
#include <string>
using namespace std;

int main(void)
{
    string str;
    cin >> str;
    reverse(str.begin(), str.end());
    cout << str << endl;
    return 0;
}

C++: #include<stdio.h>
#include<string.h>
int main(void)
{
	char a[20];
	int i,s;
	scanf("%s",a);
	s=strlen(a);
	for(i=s-1;i>=0;i--){
		printf("%c",a[i]);
	}
	printf("\n");
	return 0;
}

C++: #include<iostream>
#include<string>

using namespace std;

int main()
{
	string str;
	
	cin >> str;
	
	for(int i = str.length(); i > -1; i--){
		cout << str[i-1s] << flush;
	}
	cout << endl;
}

C++: #include<iostream>
#include<string>
 
int main(){
    std::string st;
    std::cin >> st;
     
    while(!(st.empty())){
        std::cout << st.back();
        st.pop_back();
    }
    std::cout << std::endl;
    return 0;
}

C++: #include <iostream>
#include <string>
#include <algorithm>

using namespace std;

int main(){
    string str;
    cin >> str;
    reverse(str.begin(),str.end());
    cout << str << endl;
}

C++: #include<iostream>
#include<string>

using namespace std;

int main()
{
	string str;
	
	cin >> str;
	
	for(int i = str.length(); i > -1; i--){
		cout << str[i-1] << flush;
	}
	cout << endl;
}

C++: #include <iostream>
#include <string>

using namespace std;


void displayAnswer(const string& str) {
	for(auto ite = str.rbegin(); ite != str.rend(); ++ite)
		cout << *ite;
	cout << endl;
}


void doAllProcess() {
	string buffer;

	getline(cin, buffer);

	displayAnswer(buffer);
}


int main() {
	doAllProcess();

	return 0;
}

C++: #include <algorithm>
#include <iostream>
#include <string>

using namespace std;

int main(int argc, char const* argv[])
{
	std::string s;
	std::cin >> s;
	std::reverse(s.begin(),s.end());
	std::cout << s;
	return 0;
}

C++: #include <stdio.h>
#include <string.h>
int main ()
{
char str[20];
while(scanf("%s",str)!=EOF)
{
	strrev(str);
printf("%s",str);
printf("\n");
}
return 0;
}

C++: #include<stdio.h>
int main(){
char str[21];
int i;
scanf("%s",str);
for(i=0;i=100;i++){
if(str[i]==/0)
i=100
}
for(;i>0;i--){
printf("%s",str[i]);
}
printf("\n");
}

C++: #include <iostream>
#include <string>

using namespace std;

int main() {
    string str;
    cin >> str;

    for (int i = str.size() - 1; i >= 0; --i) {
        cout << str[i];
    }
    cout << endl;
}

C++: #include<stdio.h>
int main(){
	char str[20];
	int i,j;
	scanf("%s",str);
	
	for(i = 0; str[i] != '\0'; i++){
	}
	
	for(j = i-1; j > -1; j--){
		printf("%c",str[j]);
	}
	
	puts("");
	
	return 0;
}

C++: #include <iostream>
#include <string>
using namespace std;

string reverseString(string str){
	string strTemp;
	
	for(int i=0 ; i<str.size() ; i++){
		strTemp[str.size()-i-1] = str[i];
	}
	for(int i=0 ; i<str.size() ; i++){
		str[i] = strTemp[i];
	}
	return str;
} 
 
int main(){
	string str;

	while ( cin >> str ) {
		cout << reverseString( str ) << endl;
	}
}

C++: #include<iostream>
#include<algorithm>
//#include<cmath>
#include<string>
//#include<cctype>
//#include <vector>
using namespace std;
int main(){
	string s;
	cin >> s;
	reverse(s.begin(), s.end());
	cout << s << endl;
	return 0;
}

C++: #include <iostream>
#include <string>
using namespace std;

int main(){
    string str;
    cin >> str;
    for (long i = str.size()-1; i >= 0; i--) {
        cout << str[i];
    }
    cout <<endl;
    return 0;
}

C++: #include <stdio.h>
#include <string.h>

int main(void) {
  char s[100] = {0};
  int i = 0;
  scanf("%s", s);
  i = sizeof(s)-2;
  while(i >= 0)
  putchar(s[i--]);
  
  putchar('?\n');
  return 0;
}