Go: package main

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

func main() {
	scanner := bufio.NewScanner(os.Stdin)
	counter := 0
	var mountain []int
	for scanner.Scan() {
		i, err := strconv.Atoi(scanner.Text())
		if err != nil {
			break
		}
		mountain = append(mountain, i)
		counter++
		if counter == 10 {
			break
		}

	}
	sort.Ints(mountain)
	fmt.Println(mountain[9])
	fmt.Println(mountain[8])
	fmt.Println(mountain[7])
}

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

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

	for(int i = 0;i < 10;i++)
	{
		std::cin >> high[i];
	}

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

	for(int i = 0;i < 3;i++)
	{
		std::cout << high[i] << std::endl;
	}

    return 0;
}

C++: #include<bits/stdc++.h>
using namespace std;
 
__int128_t a[15];
 
int main(){
    for(int i=0;i<10;i++){
        cin>>a[i];
    }
    sort(a, a+10);
    cout<<a[9]<<endl
        <<a[8]<<endl
        <<a[7]<<endl;
}

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

void exc( int& a, int& b ) {
    int buf;
    buf = a;
    a = b;
    b = buf;
}

int main() {
    int ns[10];
    int fst, scd, trd;
    for( int i = 0; i < 10; ++i ) {
        cin >> ns[i];
        if( i == 0 ) {
            fst = scd = trd = ns[ i ];
            continue;
        }
        if( ns[ i ] >= trd ) {
            trd = ns[ i ];
            if( trd > scd ) {
                exc( trd, scd );
                if( scd > fst ) {
                    exc( scd, fst );
                }
            }
        }
    }
    cout << fst << endl
         << scd << endl
         << trd << endl;
}

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

int main(){
  int h[10];
  for(int n=0;n<10;n++){
    using std::cin;
    cin>>h[n];
  }
  using std::sort;
  sort(h+10,h);
  for(int n=0;n<3;n++){
    using std::cout;
    using std::endl;
    cout<<h[n]<<endl;
  }
  return 0;
}

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

int main(){

unsigned short mt_list[10];

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

unsigned short high[3] = {0};
for(int h=0; h<3; h++){
for(int i=0; i<10; i++){
if(high[h] <= mt_list[i]){
high[h] = i;
}
}
unsigned short tmp = high[h];
high[h] = mt_list[tmp];
mt_list[tmp] = 0;
}

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

return 0;
}

C++: #include<cstdio>
#include <iostream>
#include<algorithm>
 
using namespace std;
 
int main()
 
{
    int a[10];
    for(int i=1;i<=10;i++)
 		scanf("%d",&a[i]);	
    sort(a,a+10);
    for(int i=9;i>=7;i--)
    cout<<a[i]<<endl;

    return 0;
 
}

C++: #include<iostream>
#include<iomanip>
#include<map>
#include<set>
#include<string>
#include<algorithm>
#include<cmath>
#include<vector>
#include<queue>
#include<stack>
#include<cstring>
#include<sstream>
using namespace std;
 
#define P(p) cout<<(p)<<endl
#define rep(i,m,n) for(int i = (m); i < (int)(n); i++)
#define rrep(i,m,n) for(int i=(int)(m); i>=(int)(n); i--)
#define vsort(v) sort(v.begin(), v.end());
#define rvsort(v) sort(v.begin(), v.end(),greater<int>());
#define YES cout<<"YES"<< endl
#define NO cout<<"NO"<<endl
#define Yes cout<<"Yes"<<endl
#define No cout<<"No"<<endl  
#define yes cout<<"yes"<<endl
#define no cout<<"no"<<endl
#define ret return
#define lb(v,n) lower_bound(v.begin(),v.end(),n)
#define ub(v,n) upper_bound(v.begin(),v.end(),n)
#define mae(v) max_element(v.begin(),v.end())
#define mie(v) min_element(v.begin(),v.end())
////////////////////////////////////////////////////////////

int main(){
	vector<long> v(10);
	rep(i,0,10)
		cin >> v[i];
	rvsort(v);
	rep(i,0,3){
		P(v[i]);
	}
	ret 0;
}

C++: #include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{

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

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

using namespace std;
int a(int x,int y){
  return x>y;
}
int main(){
  int list[10];
  for(int i=0;i<10;i++){
    cin >> list[i];
  } 
sort(list,list+10,a);
  
  for(int j=0;j<3;j++){
    cout<< list[j] << endl;
  }
  return 0;
}

C++: #include<stdio.h>
#include<ctype.h>
#include<stdlib.h>
#include<string.h>
#include<time.h>
#include<math.h>
#include<algorithm>
using namespace std;  
int main()
{
	int ar[10],i;
	for(i = 0 ; i < 10  ; i++) scanf("%d",&ar[i]);
	sort(ar,ar + 10);
	printf("%d %d %d\n",ar[9],ar[8],ar[7]);
	
	return 0;
}

C++: 
class Main
{
	public static void main(String[] av)
	{
		java.util.Scanner sc = new java.util.Scanner(System.in);
		java.util.ArrayList<Integer> vec = new java.util.ArrayList<Integer>();
		while( sc.hasNextInt() )
		{
			vec.add( sc.nextInt() );	
		}
		java.util.Collections.sort( vec );
		java.util.Collections.reverse( vec );
		for ( int i = 0; i < 3; ++i )
		{
			System.out.println( vec.get(i) );
		}
	}
}

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

void exc( int& a, int& b ) {
    int buf;
    buf = a;
    a = b;
    b = buf;
}

int main() {
    int ns[10];
    int fst, scd = 0, trd = 0;
    for( int i = 0; i < 10; ++i ) {
        cin >> ns[i];
        if( i == 0 ) {
            fst = ns[ i ];
            continue;
        }
        if( ns[ i ] >= trd ) {
            trd = ns[ i ];
            if( trd > scd ) {
                exc( trd, scd );
                if( scd > fst ) {
                    exc( scd, fst );
                }
            }
        }
    }
    cout << fst << endl
         << scd << endl
         << trd << endl;
}

C++: #include<iostream>
using namespace std;
int main()
{
    int arr[9],i,j,temp;

    for (i=0;i<9;i++)
    {cin>>arr[i];}
    for (i=0;i<9;i++)
    {
        for (j=0;j<9;j++)
        if (arr[j]>arr[j+1])
        {
            temp=arr[j];
            arr[j]=arr[j+1];
            arr[j+1]=temp;
        }
    }
    for (i=9;i>=0;i--)
    {
        cout<<arr[i];
        cout<<" ";
    }
    return 0;
}

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

int m[10];

int main() {
	for (int i = 0; i < 10; ++i)
		std::cin >> m[i];
	std::sort(m, m + 10, std::greater<int>());
	for (int i = 0; i < 3; ++i)
		std::cout << m[i] << std::endl;
	return 0;
}

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

int first = 0, second = 0, third = 0;

//???????????¨
void sort(){
	int buf = third;
	if(third > first){
	//3rd > 1st??????,1->2 2->3 3->1?????????
		third = second;
		second = first;
		first = buf;
	}else if(third > second){
	//3rd > 2nd??????,2->3 3->2?????????
		third = second;
		second = buf;
	}
}

int main(){
int buf;

for(int i = 0; i < 10; i++){
	cin >> buf;
	//3rd????????§?????????????????????
	if(buf > third){
		third = buf;
		sort();
	}
}

//??¨???
cout << first << "\n";
cout << second << "\n";
cout << third << "\n";

return 0;
}

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

 using namespace std;

 int main(){

     ifstream ifs("in1.txt");

     int i;
     int height[3]={};
     int tmp, tmp2;
     string str;

     while(getline(ifs,str)){
         sscanf(str.c_str(),"%d",&tmp);
         if(0<=tmp && tmp <=10000){
             for(i=0;i<3;i++){
                 if(height[i] < tmp){
                     tmp2 = height[i];
                     height[i] = tmp;
                     tmp = tmp2;
                 }
             }
         }
     }

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

     return 0;
 }

C++: #include<stdio.h>
int main(void)
{
	int a, b, max=0, max2=0, max3=0;
	for (a = 1; a <= 10; a++){
		scanf("%d",&b);
		if (b>max){
			max=b;
		}
		else if (b>max2){
			max2=b;
		}
		else if (b>max3){
			max3=b;
		}
	}
		printf("%d\n%d\n%d\n",max,max2,max3);
		return 0;
}

C++: #include<iostream>
#include<cstdio>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
vector<long int>V;
long int h;
for(int i=0;i<10;i++){
    scanf("%ld",&h);
    V.push_back(h);
}
sort(V.begin(),V.end());
for(int i=9;i>6;i--){
    printf("%ld\n",V[i]);
}

return 0;
}