Go: package main

import (
	"bufio"
	"fmt"
	"os"
	"strings"
)

var sc = bufio.NewScanner(os.Stdin)

func read() string {
	sc.Scan()
	return sc.Text()
}

func main() {
	sc.Split(bufio.ScanLines)
	s := read()
	rv := ""
	cols := strings.Split(s, "")
	for i := 0; i < len(cols); i++ {
		rv += cols[len(cols)-1-i]
	}
	fmt.Println(rv)
}

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

int main(void) {
  char s[100] = {0};
  int i = 0;
  gets(s);
  i = strlen(s);
  while(i >= 0)
  putchar(s[i--]);
  
  putchar('?\n');
  return 0;
}

C++: #include <iostream>
#include <vector>
#include <map>
#include <set>
#include <queue>
#include <algorithm>
#include <iomanip>
#include <cassert>
using namespace std;

#define GET_ARG(a,b,c,F,...) F
#define REP3(i,s,e) for (i = s; i <= e; i++)
#define REP2(i,n) REP3 (i,0,(int)(n)-1)
#define REP(...) GET_ARG (__VA_ARGS__,REP3,REP2) (__VA_ARGS__)
#define RREP3(i,s,e) for (i = s; i >= e; i--)
#define RREP2(i,n) RREP3 (i,(int)(n)-1,0)
#define RREP(...) GET_ARG (__VA_ARGS__,RREP3,RREP2) (__VA_ARGS__)
#define DEBUG(x) cerr << #x ": " << x << endl

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

C++: #include <iostream>
#include <cstdio>
#include <cmath>
#include <vector>
#include <algorithm>
#include <string>
#include <set>
#include <map>
#include <queue>
#include <cstring>
using namespace std;
typedef long long int ll;
const int INF = 1000000000;
#define rep(i,n) for(int i=0;i<(int)(n);i++)
int main(){
    string a;
    cin >> a;
    for(int i = a.length()- 1; i >= 0; --i){
        cout << a[i];
    }
    cout << endl;
    return 0;
}

C++: #include <bits/stdc++.h>

using namespace std;

typedef long long ll;

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

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

int main() {
char a[21];
scanf("%s",a);
int b=strlen(a);
for(int c=b-1;c!=-1;c--)printf("%c",a[c]);
printf("\n");
}

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

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

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

int main(){
	string a,b;
	cin >> a;
	b = a;
	for (int i = 0;i < a.length();i++){
		b[i] = a[a.length() - i - 1];
	}
	cout << b << endl;
}

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

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

int main() {
	char a[25];
	char b[25];
	int i = 0;
	cin >> a;
	int length = strlen(a);
	for(int t = 0;t<=length;t++)
		b[t]=a[length-t-1];
	b[length] = a[length];
	cout << b;
	cout << endl;

	return 0;
}

C++: #include <string.h>

int main( void ){
    char str[20];
    scanf( "%s",str );
    for( int i = ( strlen( str )-1 );i > 0;i-- )printf( "%c",str[i-1] );
    return 0;
}

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


int main() {

//変数の宣言

	string str;
	int i;

	cin >> str;

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

C++: #include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cctype>
#include <cstring>
#include <sstream>
#include <string>
#include <vector>
#include <map>
#include <set>
#include <list>
#include <stack>
#include <queue>
#include <algorithm>
#include <complex>
#include <iterator>
using namespace std;

typedef pair<int, int> pii;
typedef long long ll;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<string> vs;

#define all(c) (c).begin(), (c).end()
#define rall(c) (c).rbegin(), (c).rend()
#define tr(c, i) for(auto i = (c).begin(); i != (c).end(); i++)
#define rtr(c, i) for(auto i = (c).rbegin(); i != (c).rend(); i++)
#define repfn(i, a, cont, next) \
  for(auto i = (a); [=](){return(cont);}(); i = [=](){return(next);}())
#define repby(i, a, b, step) repfn(i, a, i < b, i + step)
#define repab(i, a, b) repby(i, (a), (b), 1)
#define rep(i, n) repab(i, 0, (n))
#define pb push_back
#define sz(c) int((c).size())

int rndup1000(int x) {
  int mod = x % 1000;
  if (mod)
    return x - mod + 1000;
  else
    return x;
}

int main(int argc, char **argv)
{
  int n;
  int debt = 100000;
  cin >> n;
  while (n--) {
    debt = rndup1000((debt/100)*105);
  }
  cout << debt << endl;
  return 0;
}

C++: #include <cstdio>
#include <cstring>
int main( void )
{
  int len;
  char s[128];
  gets( s );
  len = strlen( s );
  for( int i=len-1; i>=0; i-- ) putchar( s[i] );
  putchar( '\n' );
  return 0;
}

C++: #include<bits/stdc++.h>

using namespace std;
main(){
	char str[20];
	int len=0;
	int i;
	scanf("%s",str);

	len=0;
	while(str[len] != '\0') {
	len++;
	}

	for(i=len-1;i>=0;i--) {
	printf("%c",str[i]);
	}
	printf("\n");
}

C++: #include<iostream>
#include<cmath>
#include<string>
#include<cctype>
#include<vector>
#include<numeric>
#include<algorithm>
using namespace std;
int main(){
        char s[100];
        scanf("%s",s);
//      reverse(s.begin(),s.end());
    for(int i=strlen(s);i>=0;--i){
                printf("%c",s[i]);
        }
        printf("\n");
        return 0;
}

C++: #include <stdio.h>

int main()
{
	int i=0,j=0,k=0,l=0;
	char str[20+10],str2[20+10];
	scanf("%s",str);
	while(str[j] != '\0')
	{
		j++;
	}
	while(k<j)
	{
		str2[k] = str[j-k-1];
		k++;
	}
	str2[k]='\0';
	printf("%s\n",str2);

}

C++: #include <iostream>
#include <iomanip>
#include <vector>
#include <cmath>
#include <algorithm>
#include <string>
#define shosu(x) fixed<<setprecision(x)
using namespace std;
typedef pair<int,int> P;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef pair<int,P> pip;
const int inf=(1<<31)-1;

string str;

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

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

string s;

void rec(int a)
{
  if (a == -1){
    cout << '\n';
    return;
  }

  cout << s[a];
  rec(a - 1);
}

signed main(void)
{
  cin >> s;

  rec(s.size());
}

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

using namespace std;

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

C++: #include<iostream>
#include<string.h>
using namespace std;
 int c[33001],n,a,b,x[33001];
int lowbit(int n)
{
    return  (-n)&n;
}
int sum(int i)
{
    int s=0;
    while (i>0)
    {
        s+=c[i];
        i-=lowbit(i);
    }
    return s;
}
void  update (int pos ,int i )
{
    while (pos<=33000)
    {
        c[pos]+=i;
        pos+=lowbit(pos);

    }
}
int main()
{

   
    cin>>n;
    memset(c,0,sizeof(c));
    memset(x,0,sizeof(x));
for(int i=1;i<=n;i++)
    {
        scanf("%d%d",&a,&b);
        x[sum(a+1)]++;
        update(a+1,1);
}
    for(int i=0;i<n;i++)
    {
        printf("%d\n",x[i]);
    }
    return 0;
}

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

using namespace std;

int main() {
    int i,len;
    string ch;

    cin >> ch;

    len = ch.length();

    for(i = 0;i < len / 2;i++){
        char box = ch[i];
        ch[i] = ch[len - i];
        ch[len - i] = box;
    }

    for(i = 0; i <= len;i++){
        cout << ch[i];
    }
    cout << endl;

    return 0;
}

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

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

int main()
{
char str[20];
 gets(str);
 strrev(str);
 printf("%s\n",str);
 return 0;
}

C++: #include <bits/stdc++.h>
using namespace std;
int main(){
	string s;
	reverse(s.begin(),s.end());
	cout << s << endl;
	return 0;
}

C++: #include <stdio.h>


int main(void){
    char st[20+1];
    char *pt;

    scanf("%s", st);
    for (pt=st; *pt!='\0'; pt++) ;
    for (pt--; pt!=st; pt--) printf("%c", *pt);
    printf("%c", *pt);
    return 0;
}