Go: package main

import(
	"fmt"
	"sort"
)

func main() {
	var a int
	var i int
	dataint := [10]int{}
	i = 0
	for _, err := fmt.Scan(&a); err == nil; _, err = fmt.Scan(&a) {
		dataint[i] = a
		i++
	}
	sort.Ints(dataint[:])
	for i:=9; i>6; i--{
		fmt.Println(dataint[i])
	}
}

Python: mt = []

for i in range(10):
        mt.append(int(input().strip()))

mt.sort().reverse()

print( mt[0] )
print( mt[1] )
print( mt[2] )

Python: s=[int(input()) for i in range(10)]
s.sort()
print(s[9])
print(s[8])
print(s[7])

Python: h = [0] * 10
for i in range(10):
    h[i] = int(input())

h.sort()
h.reverse()
print(h[0])
print(h[1])
print(h[2])

Python: # coding: utf-8
# Here your code !

mount = [int(input()) for i in range(10)]
a = max(mount)
mount.remove(a)
b = max(mount)
mount.remove(b)
print(a)
print(b)
print(max(mount))

Python: import sys

l = sorted(map(int,sys.stdin.readlines()),reverse=True)
for i in l[:3]:
    print(i)

Python: L=list()
for i in range(10):
  L.append(int(input()))
L.sort(reverse=True)
print(L[0])
print(L[1])
print(L[2])

Python: heights = []
for i in range(10):
    heights.append(int(input()))

for i in range(10):
    for j in range(i,10):
        if (heights[j] > heights[i]):
            w = heights[i]
            heights[i] = heights[j]
            heights[j] = w

print(heights[0:3])

Python: hs = []
for i in range(10):
    hs.append(int(input()))

hs.sort(reverse = True)

for i in range(3):
    print(hs[i])

Python: a=[print(I) for I in sorted([int(input()) for i in range(10)])[2::-1]]

Python: a=[]
for i in range(10):
    a.append(int(input()))
a.sort()
a.reverse()
print(a[0])
print(a[1])
print(a[2])

Python: import sys

a = []
for i in range(10):
    a.append(int(input()))

a.sort()
print(a[9])
print(a[8])
print(a[7])

Python: first = 0;
second = 0;
third = 0;
for var in range(0,10):
	N = input()
	if (N>first):
		third = second
		second = first
		first = N
	elif (N>second):
		third = second
		second = N
	elif (N>third):
		third = N
print (first)
print (second)
print (third)

Python: h = list()
for i in range (10):
    a = input()
    a = int(a)
    h.append (a)
h.sort()
print(h[9])
print(h[8])
print(h[7])

Python: h=[int(input()) for i in range(10)]
h.sort(reverse=True)
[print(i) for i in h[:3]]

Python: a=[]
for i in range(10):
	a.append(input())
a=sorted(a,key=int,reverse=True)
for i in a[0:3]:
	print(i)

Python: l = []
for i in range(10):
    l.append(int(input()))
l.sort()
for i in range(3):
    print(l[i])

Python: a = []
for i in range(10):
    a.append(int(input()))
a.sort()
print(int(a[9]))
print(int(a[8]))
print(int(a[7]))

Python: # AOJ 0001 List of Top 3 Hills
# Python3 2018.6.7 bal4u

a = [int(input()) for i in range(10)]
a.sort(reverse=True)
print(*a[0:3], sep='\n')

Python: height = [int(input()) for i in range(10)]

height.sort(reverse=1)

for i in range(3):
    print(height[i])

Python: from numpy.random import mtrand

mt = []

for i in range(10):
    mt.append(input())

print(mt.pop(mt.index(max(mt))))
print(mt.pop(mt.index(max(mt))))
print(mt.pop(mt.index(max(mt))))

Python: a=[]
for i in range(10):
    height = int(input())
    a.append(height)
a.sort()
a.reverse()
for j in range(3):
    print(a[j])

Python: x=[int(input()) for i in range(10)]
x.sort()
print('{}\n{}\n{}' . format(x[9],x[8],x[7]))

Python: mountains = []
for i in range(10):
    mountains.append(int(input()))
for m in sorted(mountains)[-1:-4:-1]:
    print(m)

Python: x=[]
for i in range(10):
    hight=int(input())
    x.append(hight)

list.sort(x,reverse=True)
print(x[0])
print(x[1])
print(x[2])

Python: import sys

hills = []
for _ in range(10):
    height = int(sys.stdin.readline().strip())
    hills.append(height)

hills.sort(reverse=True)
for i in range(3):
    print(hills[i])

Python: a = [(int)(input()) for i in range(10)]
for i in range(3):
    print(max(a))
    a.remove(max(a))

Python: h=[]
for i in range(10):
    h.append((int)(input()))
h.sort()
h.reverse()
for i in range(3):
    print(h[i])

Python: print(*sorted([int(input()) for i in range(10)])[:6:-1], sep='\n')

Python: mmax1 = 0
middle = 0
small = 0
x = 0
for i in range(10):
	x = int(input())
	if max1 < x :
		middle = max1
		max1 = x
		x = 0
	elif middle < x :
		small = middle
		middle = x
		x = 0
	elif small <= x :
		small = x
		x = 0
	x = 0
print(max1)
print(middle)
print(small)

Python: lis=list()

for a in range(1,11):
    num=int(input())
    lis.append(num)

lis.sort()
for va in range(9,6,-1):
    print(lis[va])

Python: m = [int(input()) for _ in range(10)]
m.sort()
[print(m[-i]) for i in range(1, 4)]

Python: x = []
for i in range(10):
    x.append(int(input()))
x.sort()
print(x[-1])
print(x[-2])
print(x[-3])

C++: #include <stdio.h>
int main(void){
    int a=0,b=0,c=0,n;
    while(scanf("%d",&n)>0){
        if(n>c)c=n;
        if(c>b)n=b,b=c,c=n;
        if(b>a)n=a,a=b,b=n;
    }
    printf("%d\n%d\n%d\n",a,b,c);
    return 0;
}

C++: #include <iostream>
#include <algorithm>
using namespace std;
int main()
{
    int A[10];
     for(int i=0;i<10;i++)
     cin >> A[i];
     sort(A,A+10);
     reverse(A,A+10);
     for(int i=0;i<3;i++)  cout << A[i] << endl;
     return 0;
}

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

int main(){
    vector<int> a(10);
    for(int i=0;i<10;i++) cin >> a[i];
    sort(a.begin(),a.end());
    for(int i=9;i>6;i--) cout << a[i] << endl;
}

C++: #include<iostream>
using namespace std;
int main()
{
	int a[10],i,top1=0,top2=0,top3=0;
	for(i=0; i<10; i++)
	{
		cin >> a[i];
		if(top1<a[i])
		{
			top3=top2;
			top2=top1;
			top1=a[i];
		}
		else if(top2<a[i])
		{
			top3=top2;
		    top2=a[i];
		}
		else if(top3<a[i])
		{
			top3=a[i];
		}
	}
	cout << top1 << "\n" << top2 << "\n" << top3 << "\n";
return 0;}

C++: #include<iostream>
using namespace std;
int main() {
int top[5]={0,0,0,0,0};
int yama;

cin >> top[0];

for(int i=0; i<9; i++){
 cin >> yama;

 for(int j=0; j<3; j++){
  if(yama >top[j]){
   top[j+2] = top[j+1]
   top[j+1] = top[j]
   top[j] =yama;
   break;
  }
 }
 return 0;
}

C++: #include <iostream>
#include <string>
#include <vector>
#include <cmath>
#include <algorithm>
#include <cstdlib>

using namespace std;

int main()
{
	int m[10];

	for(int i=0;i<10;i++) cin>>m[i];

	for(int i=0;i<3;i++){
		int max=0;
		for(int j=1;j<10;j++){
			if(m[j]>m[max]) max=j;
		}
		cout<<m[max]<<endl;
		m[max]=0; max=0;
		
	}

	return 0;
}

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

int main(){
  int m[10];
  for(int i=0;i<10;i++)
    cin >> m[i];
  sort(m,m+10);
  cout << m[9] << endl << m[8] << endl << m[7] << endl;
}

C++: #include <vector>
#include <map>
#include <set>
#include <stack>
#include <queue>
#include <algorithm>
#include <utility>
#include <functional>
#include <sstream>
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <cctype>
#include <string>
#include <cstring>
#include <ctime>
#include <climits>
using namespace std;
inline int toInt(string s) { int v; istringstream sin(s); sin >> v; return v;}
template<class T> inline string toString(T x) { ostringstream sout; sout << x; return sout.str();}
typedef vector<int> vi;
typedef vector<vi>  vvi;
typedef vector<string> vs;
typedef pair<int, int> pii;
typedef long long ll;
#define ALL(a) (a).begin(),(a).end()
#define RALL(a) (a).rbegin(),(a).rend()
#define EACH(t,i,c) for(t::iretator i=(c).begin(); i!=(c).end(); ++i)
#define EXIST(s,e) ((s).find(e)!=(s).end())
#define FOR(i,a,b) for(int i=(a);i<=(b);++i)
#define REP(i,n) FOR(i,0,(n)-1)
const double EPS = 1e-12;
const double PI = acos(-1.0);

int main() {
	vi n(10);
	REP(i, 10) {
		cin >> n[i];
	}
	sort(RALL(n));
	REP(i, 3) {
		cout << n[i] << endl;
	}

	return 0;
}