Go: package main

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

var rdr = bufio.NewReaderSize(os.Stdin, 1000000)

func readLine() string {
	buf := make([]byte, 0, 1000000)
	for {
		l, p, e := rdr.ReadLine()
		if e != nil {
			panic(e)
		}
		buf = append(buf, l...)
		if !p {
			break
		}
	}
	return string(buf)
}

func toInt(str string) int {
	n, _ := strconv.Atoi(str)
	return n
}

func main() {
	lst := make([]int, 0)
	for i := 0; i < 10; i++ {
		lst = append(lst, toInt(readLine()))
	}
	sort.Ints(lst)
	for i := 9; i > 6; i-- {
		fmt.Println(lst[i])
	}
}

C++: #include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <vector>
#include <algorithm>
#include <utility>
#include <queue>
int n;
using namespace std;
int main(){
	std::ios::sync_with_stdio(false);
	priority_queue <int > dp;

	while(cin>>n){
		dp.push(n);
	}
	for(int i=0;i<3;i++){
		int output=dp.top();
		dp.pop();
		cout<<output<<"\n";
	}
	return 0;
}

C++: #include <iostream>

using namespace std;

int main()
{
    int first=0,second=0,third=0;
    int moun[10];
    for(int i=0;i<10;i++){
        cin >> moun[i];
    }
    for(int i=0;i<10;i++){
        first<moun[i] ? first=moun[i]:first;
    }
    cout << first << endl;
    for(int i=0;i<10;i++){
        second<moun[i] && moun[i]<first ? second=moun[i]:second;
    }
    cout << second << endl;
    for(int i=0;i<10;i++){
        third<moun[i] && moun[i]<second ? third=moun[i]:third;
    }
    cout << third << endl;
    return 0;
}

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

int hills[10] ;
int tops[3] = {0,0,0} ;

int main()
{
	for( int i = 0 ; i < 10 ; i ++ )
	{
		cin >> hills[i] ;

		if( hills[i] >= tops[0] )
		{
			tops[2] = tops[1] ;
			tops[1] = tops[0] ;
			tops[0] = hills[i] ;
		}
		else if( hills[i] >= tops[1] )
		{
			tops[2] = tops[1] ;
			tops[1] = hills[i] ;
		}
		else if( hills[i] >= tops[2] )
		{
			tops[2] = hills[i] ;
		}
	}

	for( int i = 0 ; i < 3 ; i ++ )
	{
		cout << tops[i] << "\n" ;
	}

	_getch() ;
	return 0 ;
}

C++: #include <iostream>
using namespace std;
int main(int argc, const char * argv[])
{
    int height[10], i, height1 = 0, height2 = 0, height3 = 0;
    for (i = 0; i < 10; i++) {
        cin >> height[i];
        if (height1 < height[i]) {
            height1 = height[i];
        }
    }
    for (i = 0; i < 10; i++) {
        if (height2 < height[i] && height[i] != height1) {
            height2 = height[i];
        }
    }
    for (i = 0; i < 10; i++) {
        if (height3 < height[i] && height[i] != height1 && height2 != height[i]) {
            height3 = height[i];
        }
    }
    cout << height1 << endl;
    cout << height2 << endl;
    cout << height3 << endl;
    return 0;
}

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

int main()
{

        std::vector<int> vec;
        int a;

        for(int i = 0; i < 10; ++i)
        {
                std::cin >> a;
                vec.push_back(a);
        }

        std::sort(vec.begin(),vec.end());

        for(int i = 0; i < 3; ++i) std::cout << vec.at(9-i) << std::endl;

        return 0;
}

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

int mountain[12]

int main() {
  for (int i = 0; i < 10; ++i){
    cin >> mountain[i];
  }
  sort(mountain,mountain+10)

  cout << mountain[9] << endl
  << mountain[8] << endl
  << mountain[7] << endl;
}

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

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

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

const int MAX_N = 9;
int a[MAX_N];
  
int main(){

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

    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);
	for(int i=0;i<3;i++)cout<<a[i]<<endl;
}

C++: #include<iostream>
using namespace std;
int main()
{
int i,h,m1,m2,m3;
m1=0;
m2=0;
m3=0;
for(i=0;i<10;i++)
{
	cin>>h;
	if(h>m1)
	{
		m3=m2;
		m2=m1; 
		m1=h;
	}
	else if(h>m2)
	{
		m3=m2;
		m2=h;
	}
	else if(h>m3)
	{
		m3=h;
	}
}
cout<<m1<<endl;
cout<<m2<<endl;
cout<<m3;
}

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

int main(){
    int i, j, damy, mthei[10];

	for(i = 0; i < 10; i++){
		cin >> mthei[i];
	}

	for(i = 0; i < 10; i++){
		for(j = i + 1; j < 10; j++){
			if(mthei[i] < mthei[j]){
				damy = mthei[i];
				mthei[i] = mthei[j];
				mthei[j] = damy;
			}
		}
	}

	for(i = 0; i < 3; i++){
		cout << mthei[i] << endl;
	}

	return 0;
}

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

int main()
{
	int top, stop, sstop, obj;
	top = stop = sstop = 0;
	for (int i = 0; i < 10; i++){
		cin >> obj;
		if (obj > top){
			sstop = stop;
			stop = top;
			top = obj;
		}else if (obj > stop){
			sstop = stop;
			stop = obj;
		}else if (obj > sstop){
			sstop = obj;
		}
	}
	cout << top << "\n" << stop << "\n" << sstop << endl;
}

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

C++: #include<stdio.h>
#include<algorithm>
using namespace std;
int main()
{
    int i,j,arr[11];
    for(i=1;i<=10;i++)
    {
        for(j=1;j<=3;j++)
        scanf("%d",&arr[j]);
        sort(arr,10);
        printf("%d\n",arr[j]);
    }
    return 0;
}

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

using namespace std;

int main() {
	int m[10];

	for (int i = 0; i < 10; i++)scanf("%d", &m[i]);

	stable_sort(m, m + 10);
	
	for(int i=9;i>6;i--)printf("%d\n", m[i]);

	return 0;
}

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

int main(){
	int input[10];
	for(int i=0; i<10; i++){
		cin >> input[i];
	}
	sort(input, input+10);

	for(int i =1; i <= 3; i++){
		cout << input[10-i] << endl;
	}
}

C++: //--------------------------------------------------template----------------------------------------//
//c
#include <stdio.h>
#include <time.h>
#include <math.h>
//c++
#include <cstdio>
#include <iostream>
#include <algorithm>
#include <functional>
#include <cstdlib>
#include <sstream>
#include <string>
#include <set>
#include <map>
#include <stack>
#include <queue>
#include <deque>
#include <vector>
#include <complex>
#include <cmath>
//c++11
#include <tuple>
#define all(c) ((c).begin(),(c).end())
#define rall(c) (c).rbegin(),(c).rend()
//#define sort(v,n) sort(v,v+n)
//#define vsort(v) sort(v.begin(),v.end())
#define vvsort(v) sort(v.rbegin(),v.rend())
#define ll long long
#define pb(a) push_back(a)
#define fi first
#define se second
#define inf 999999999
using namespace std;
const ll MOD = 1e9 + 7;
const double PI = acos(-1.0);
//---------------------------------------------------------------------------------------------//
int a[10];

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

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

int main(){
    vector <int> v;
int a;    
for(int i-;i<10;i++){
cin >> a;
v.push_back(a);
}

sort(v.begin(),v.end);

cout << v[0] << endl << v[1] << endl << v[2] << endl;

return 0;

}

C++: #include<iostream>
#include<vector>
#include<algorithm>
using namespace std;int h,i;int main(){vector<int>l;for(i=0;i++<10;l.push_back(h))cin>>h;sort(l.begin(),l.end(),greater<int>());for(i=0;i++<3;)cout<<l.begin()[i-1]<<'\n';}