Go: package main

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

func getsAsIntArray() (line []int) {
	scanner := bufio.NewScanner(os.Stdin)

	for scanner.Scan() {
		str := scanner.Text()
		if str == "" {
			break
		}
		data, err := strconv.Atoi(str)
		if err != nil {
			break
		}
		line = append(line, data)
	}

	return
}

func main() {

	lines := getsAsIntArray()
	sort.Sort(sort.Reverse(sort.IntSlice(lines)))
	for i, v := range lines {
		if i < 3 {
			fmt.Println(v)
		}
	}
}

C++: #include<bits/stdc++.h>
#define ll long long int
#define FOR(i,a,b) for(ll i=(ll)(a);i<(ll)(b);i++)
#define REP(i,n) FOR(i,0,n)
#define REP1(i,n) FOR(i,1,n)
using namespace std;
 /*temp*/

int main(){
    int a[10];
    REP1(i,10){
        cin >> a[i];
    }
    sort(a, a+10);
    cout << a[9] << '\n'
         << a[8] << '\n'
         << a[7] << '\n';
}

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

using namespace std;

int main() {
    priority_queue<int> pq;

    for (int i = 0; i < 10; ++i) {
        int height;
        cin >> height;
        pq.emplace(height);
    }


    for (int i = 0; i <= 2; ++i) {
        std::cout << pq.top() << endl;
        pq.pop();
    }

    std::cout << '\n';

    return 0;
}

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

int main(){
	int height[10] = {0};

	for(int i = 0; i < 10; i++){
		cin >> height[i];
	}
	
	int temp = 0;
	for(int i = 0; i < 3; i++){
		for(int j = 0; j < 10-i; j++){
			if(height[j] > height[j+1]){
				temp = height[j];
				height[j] = height[j+1];
				height[j+1] = temp;
			}
		}
	}
	
	cout << height[9] << endl;
	cout << height[8] << endl;
	cout << height[7] << endl;
	
	return 0;
}

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

int main() {
    vector<int> v;
    for(int i = 0; i < 10; i++) {
        int x;
        cin >> x;
        v.push_back(x);
    }
    sort(v.begin(), v.end());
    string str;
    for(int i = 9; i >6; i--) {
        str += to_string(v[i]);
        str += "\n";
    }
    str.pop_back();
    cout << str << endl;
}

C++: #include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
int main(){
	int a,i=1;
	vector<int> h;
	while(cin >>a ){
		h.push_back(a);
		i++;
		if(i==11)
		break;
	}
	sort(h.begin(),h.end());
	reverse(h.begin(),h.end());
	for(int i=0;i<3;i++)
	cout << h[i]<<endl;

}

C++: #include<stdio.h>
int main(){
	int i,j,tmp;
	int Mt[10];
	for(i=0;i<10;i++){
		scanf("%d",&Mt[i]);
	}
	for(;;){
		for(i=0;i<10;i++){
			for(j=i+1;j<10;j++){
				if(Mt[i]>Mt[j]){
					tmp=Mt[i];
					Mt[i]=Mt[j];
					Mt[j]=tmp;
				}
			}
		}
		if(Mt[0]<=Mt[1]){break;}
	}
		for(i=9;i>=7;i--){printf("%d\n",Mt[i]);}
	
	return 0;
}

C++:  #include <bits/stdc++.h>
#ifdef dbg
#include "./printer.hpp"
#else
#define dump(x) void(0)
#endif

using namespace std;
#define ll long long
inline long  toInt(string s) {long  v; istringstream sin(s);sin>>v;return v;}
template<class T> inline string toString(T x) {ostringstream sout;sout<<x;return sout.str();}
#define INF 100000

int main(){
  ios_base::sync_with_stdio(0);

  vector<ll> a;
  ll e;
  while(scanf(" %d", &e) != EOF){
    a.push_back(e);
  }
  sort(a.begin(),a.end(),[] (ll a, ll b) {return a > b;});
  cout << a[0] << '\n' << a[1] << '\n' << a[2] << '\n';
  
  return 0;

}

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

int main(void)
{
    vector <int> a;
    int b;

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

for (int i = 0; i < 100000; i++){
	for (int j = 0; j < 100; j++){
		b = 0;
	}
}

sort(a.begin(), a.end());
cout << a[9] << endl << a[8] << endl << a[7] << endl;

return 0;
}

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

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

C++: #include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main() {
    cin.tie(0);
    ios::sync_with_stdio(false);
    vector<int> v;
    int a;
    while (cin >> a) {
        v.push_back(a);
    }
    sort(v.begin(), v.end(), [](const int& a, const int& b) {return a > b;});
    for (unsigned i = 0; i < v.size() && i < 3; i++)
        cout << v.at(i) << "\n";
}

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

void
swap(int *a, int *b)
{
    int tmp;
    tmp = *a;
    *a = *b;
    *b = tmp;
}

int main(){

	int a[11],max1,max2,max3;

	for (int i=1; i<11; i++){
		while (true){ 
		cout << "山の高さ" << i << "（整数）" ;			
		cin >> a[i];
		if ((cin.good() == 1) && (a[i] >= 0) && (a[i] <= 10000)) {
			break;
		}
		}	
	}

	max1 = a[1];

	for (int i=2; i<11; i++){
		if (max1 < a[i]){
			swap(max1,a[i]);
		}
	}
	max2 = a[2];

	for (int i=3; i<11; i++){
		if (max2 < a[i]){
			swap(max2,a[i]);
		}
	}
	max3 = a[3];

	for (int i=4; i<11; i++){
		if (max3 < a[i]){
			swap(max3,a[i]);
		}
	}


		cout << max1 << endl;
		cout << max2 << endl;
		cout << max3 << endl;
		

return 0;
	}

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

#define BOGO 10

using namespace std;

int main()
{
	int arr[BOGO];
	
	for(int i = 0; i < BOGO; i++){
		cin >> arr[i];
	}
	
	for(;;){
		
		/**
		for(int j = 0; j < BOGO; j++){
			cout << arr[j] << flush;
		}
		cout << endl;
		/**/
		
		bool found = true;
		for(int j = 0; j < BOGO-1; j++){
			if(arr[j] > arr[j+1]){
				found = false;
				break;
			}
		}
		
		if(found){
			break;
		}
		random_shuffle(arr, arr+BOGO);
	}
	cout << arr[9] << "\n" << arr[8] << "\n" << arr[7] << endl;
}

C++: #include<iostream>
#include<algorithm>
using namespace std;
int data[10];

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

for(int i=0;i<3;i++)cout<<data[i]<<endl;

}

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

#define N_HILLS 10
#define N_TOP   3

using namespace std;


void input_hills(int *hills)
{
  for(int i = 0; i < N_HILLS; ++i){
    cin >> hills[i];
  }
}


void output_top_hills(int *hills)
{
  // descending order
  sort(hills, hills+N_HILLS, greater<int>());

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


int main()
{
  int hills[N_HILLS];

  input_hills(hills);
  output_top_hills(hills);

  return 0;
}

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

int a0 = 0, a1 = 0, a2 = 0, a = 0;

int main(){
    for(int i = 0; i < 10; i++){
        cin >> a;
        if(a0 <= a){
            a2 = a1;
            a1 = a0;
            a0 = a;
        }else if(a1 <= a){
            a2 = a1;
            a1 = a;
        }else if(a2 <= a){
            a2 = a;
        }
    }
    cout << a0 << endl << a1 << endl << a2 << endl;
    return 0;
}

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

int main(){
	int height[10];
	int i , j;
	for(i=0 ; i<10 ; i++){
		cin >> height[i] ;
	}
	cout << endl;
	
	for(i=9 ; i>0 ; i--){
		for(j=0 ; j<i ; j++){
			if (height[j]>=height[j+1]){
				height[j]^=height[j+1];
				height[j+1]^=height[j];
				height[j]^=height[j+1];
			}
		}
	}
	for(i=9 ; i>6 ; i--){
		cout << height[i] << endl;
	}
	return 0;
}

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

int main() {
  int a[10];
  for (auto& e : a) cin >> e;
  sort(a, a + 10);
  cout << a[9] << endl
       << a[8] << endl
       << a[7] << endl;
}

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

int main(){
    vector<int> v;
    int num;
    for(int i = 0;i<10;i++){
        cin>>num;
        v.push_back(num);
    }

    sort(v.begin(),v.end(),greater<int>());
    


    for(int i = 0;i<3;i++)
        cout<<v.at(i);
    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, greater<int>());

	cout << a[0] << endl << a[1] << endl << a[2] << endl;
}