Go: package main

import (
	"bufio"
	"fmt"
	"os"
	"sort"
	"strconv"
)

var scanner = bufio.NewScanner(os.Stdin)

func nextString() string {
	scanner.Scan()
	return scanner.Text()
}

func nextInt() int {
	n, err := strconv.Atoi(nextString())
	if err != nil {
		fmt.Printf("strconv.Atoi failed: %v\n", err)
	}
	return n
}

func main() {
	scanner.Split(bufio.ScanWords)

	n := 5
	array := make([]int, n)
	for i := 0; i < n; i++ {
		array[i] = nextInt()
	}
	sort.Slice(array, func(i, j int) bool { return array[i] > array[j] })
	arrayStr := fmt.Sprint(array)
	l := len(arrayStr)
	fmt.Println(arrayStr[1:(l - 1)])
}

C++: #include <iostream>
#include <vector>
#include <string.h>
#include <algorithm>

#if 0
#define DEBUG_0331
#endif

static int getNumbers(std::vector<int>& vec);
static int sortNumbers(std::vector<int>& vec);
static void pushNumbers(std::vector<int>& vec);

int main()
{
    std::vector<int> vector;

    getNumbers(vector);
    sortNumbers(vector);
    pushNumbers(vector);
#ifdef DEBUG_0331
    for (int i = 0; i < vector.size(); i++ ) {
        std::cout << vector.at(i) << std::endl;
    }
#endif
    return 0;
}

static int getNumbers(std::vector<int>& vec)
{
    std::string s1("");
    char ss1[512] = {0};
    char *p = NULL;

    if ( 0x00 == &vec ) {
        return 1;
    }

    std::getline(std::cin, s1);

    p = ss1;
    memset(ss1, '\0', sizeof(ss1));
    memcpy(ss1, s1.c_str(), sizeof(ss1));
    // split
    while (*p) {
        if (' ' != *p) {
            vec.push_back(*p - '0');
        }
        p++;
    }

    return 0;
}

static int sortNumbers(std::vector<int>& vec)
{
    if ( 0x00 == &vec ) {
        return 1;
    }

    // sort
    std::sort(vec.begin(), vec.end(), std::greater<int>());

    return 0;
}

static void pushNumbers(std::vector<int>& vec)
{
    if ( 0x00 == &vec ) {
        return;
    }

    for (unsigned int i = 0; i < vec.size(); i++) {
        std::cout << vec.at(i);
        if (vec.size() - 1 == i) {
            std::cout << '\n';
        } else {
            std::cout << ' ';
        }
    }
}

C++: #include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<ctime>
#include<cctype>
#include<climits>
#include<iostream>
#include<string>
#include<vector>
#include<map>
#include<list>
#include<queue>
#include<deque>
#include<algorithm>
#include<numeric>
#include<utility>
#include<complex>
#include<memory>
#include<functional>

#define REP(i, n) for(int i = 0;i < n;i++)
#define REPR(i, n) for(int i = n;i >= 0;i--)
#define FOR(i, m, n) for(int i = m;i < n;i++)
#define FORR(i, m, n) for(int i = m;i >= n;i--)
#define SORT(v, n) sort(v, v+n);
#define VSORT(v) sort(v.begin(), v.end());
#define llong long long
#define pb(a) push_back(a)
#define INF 999999999
using namespace std;

typedef vector<int> vi;
typedef vector<long long> vl;
typedef vector<double> vd;
typedef pair<int, int> pii;
typedef pair<long, long> pll;
typedef long long ll;

int dy[] = { 0, 0, 1, -1, 0 };
int dx[] = { 1, -1, 0, 0, 0 };

int main(){
	ios::sync_with_stdio(false);

	vi a(5, 0);

	REP(i, 5)	scanf("%d", &a[i]);

	VSORT(a);

	printf("%d %d %d %d %d\n", a[4], a[3], a[2], a[1], a[0]);

}

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

int main(){
	int a[5];
	for(int i = 0; i<5; i++){
		cin >> a[i];
	}
	sort(a, a + 5);
	for(int i = 4; i>0; i--){
		cout << a[i] << " ";
	}
	cout << a[0] << endl;
	return 0;
}

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

//const static double	de_PI	= 3.14159265358979323846;
//const static int	de_MOD	= 1000000007;
//const static int	de_MAX	= 999999999;
//const static int	de_MIN = -999999999;

int main(void) {

	//std::ifstream in("123.txt");	std::cin.rdbuf(in.rdbuf());

	std::vector<int> ans(5);
	for (int i = 0; i < 5; i++) {
		std::cin >> ans[i];
	}
	std::sort(ans.begin(), ans.end());
	for (int i = 4; i >= 1; i--) {
		std::cout << ans[i] << " ";
	}
	std::cout << ans[0] << std::endl;

}

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

int main() {
	// your code goes here
	long long int a[5];
	for(int i=0;i<5;i++) cin >> a[i];
	for(int i=4;i>0;i--) cout << a[i] << " ";
	cout << a[0] << endl;
	return 0;
}

C++: #include<iostream>

using namespace std;

int main(){
  int list[5], i, j, temp;
  cin >> list[0] >> list[1] >> list[2] >> list[3] >> list[4];
  for(i=0; i<5; i++){
    for(j=i+1; j<5; j++){
      if(list[i] <= list[j]){
	temp = list[i];
	list[i] = list[j];
	list[j] = temp;
      }
    }
  }
  for(i=0; i<5; i++)cout << list[i] << " ";
  cout << endl;
}

C++: #include <iostream>
#include <vector>
#include <string.h>
#include <algorithm>

#if 0
#define DEBUG_0331
#endif

static int getNumbers(std::vector<int>& vec);
static int sortNumbers(std::vector<int>& vec);
static void pushNumbers(std::vector<int>& vec);

int main()
{
    std::vector<int> vector;

    getNumbers(vector);
    sortNumbers(vector);
    pushNumbers(vector);
#ifdef DEBUG_0331
    for (int i = 0; i < vector.size(); i++ ) {
        std::cout << vector.at(i) << std::endl;
    }
#endif
    return 0;
}

static int getNumbers(std::vector<int>& vec)
{
    std::string s1("");
    char ss1[30] = {0};
    char *p = NULL;

    if ( 0x00 == &vec ) {
        return 1;
    }

    std::getline(std::cin, s1);

    p = ss1;
    memset(ss1, '\0', sizeof(ss1));
    memcpy(ss1, s1.c_str(), sizeof(ss1));
    // split
    while (*p) {
        if (' ' != *p) {
            vec.push_back(*p - '0');
        }
        p++;
    }

    return 0;
}

static int sortNumbers(std::vector<int>& vec)
{
    if ( 0x00 == &vec ) {
        return 1;
    }

    // sort
    std::sort(vec.begin(), vec.end(), std::greater<int>());

    return 0;
}

static void pushNumbers(std::vector<int>& vec)
{
    if ( 0x00 == &vec ) {
        return;
    }

    for (unsigned int i = 0; i < vec.size(); i++) {
        std::cout << vec.at(i);
        if (vec.size() - 1 == i) {
            std::cout << '\n';
        } else {
            std::cout << ' ';
        }
    }
}

C++: #include <iostream>
#include <algorithm>
using namespace std;
int main() {
  int a, b, c, d, e;
  vector<int> v;
  v.push_back(a);
  v.push_back(b);
  v.push_back(c);
  v.push_back(d);
  v.push_back(e);
  sort(v.begin(), v.end(), greater<int>);
  for (int i = 0; i < v.size(); ++i) {
    cout << v[i];
    if (i < v.size() - 1) {
      cout << " ";
    }
  }
  cout << endl;
  return 0;
}

C++: #include <iostream>
#include <sstream>
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <ctime>
#include <cstring>
#include <climits>
#include <algorithm>
#include <map>
#include <set>
#include <stack>
#include <vector>
#include <queue>
#include <bitset>
#include <string>
using namespace std;

#define REP(i,n) for(int i=0; i<n; i++)
#define RPA(i,s,e) for(int i=s; i<=e; i++)
#define RPD(i,s,e) for(int i=s; i>=e; i--)
#define PB(a) push_back(a)
#define MP(i,s) make_pair(i,s)
#define SZ(a) (int)(a).size()
#define ALL(a) (a).begin(), (a).end()
#define PRT(a) cout << (a) << endl
#define PRT2(a,b) cout << (a) << " " << (b) << endl
#define PRT3(a,b,c) cout << (a) << " " << (b) << " " << (c) << endl

typedef vector<int> VI;
typedef long long LL;
typedef pair<int,int> P;


void coding() {
	vector<int> v(5);
	for(int i=0; i<5; i++) {
		cin>>v[i];
	}
	sort(ALL(v));
	for(int i=0; i<5; i++) {
		printf("%d%c", v[i], i==4 ? '\n' : ' ');
	}
}

// #define _LOCAL_TEST

int main() {
#ifdef _LOCAL_TEST
	clock_t startTime = clock();
	freopen("a.in", "r", stdin);
#endif

	coding();

#ifdef _LOCAL_TEST
	clock_t elapsedTime = clock() - startTime;
	cout << endl;
	cout << (elapsedTime / 1000.0) << " sec elapsed." << endl;
	cout << "This is local test" << endl;
	cout << "Do not forget to comment out _LOCAL_TEST" << endl << endl;
#endif
}