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 <stdio.h>
#include <math.h>

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

	ans[0] = 0; ans[1] = 0; ans[2] = 0;
	for(int j=0; j<10; j++) {
		if(m[ans[0]] < m[j]) {
			ans[0] = j;
		}
	}
	for(int j=0; j<10; j++) {
		if(m[ans[1]] < m[j] && ans[0] != j) {
			ans[1] = j;
		}
	}
	for(int j=0; j<10; j++) {
		if(m[ans[2]] < m[j] && ans[0] != j && ans[1] != j) {
			ans[2] = j;
		}
	}
	printf("%d\n%d\n%d\n", m[ans[0]], m[ans[1]], m[ans[2]]);
	return 0;
}

C++: #include <iostream>

int main ()
{
	int h[10]{};

	for (int i = 0; i < 10 ; i++) {
		std::cin >> h[i];
	}
	for (int i = 0; i < 9; i++) {
		int pv = h[i];
		int k = i;
		for (int j=i+1 ; j<10 ; j++){
			if (h[j] < pv) {
				pv = h[j];
				k = j;
			}
		}
		int sw = h[i];
		h[i] = h[k];
		h[k] = sw;
	}
	std::cout << h[9] << std::endl;
	std::cout << h[8] << std::endl;
	std::cout << h[7] << std::endl;
}

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

C++: inputs = []

10.times do
  inputs << gets.to_i
end

puts inputs.sort.reverse[0..2]

C++: #include<stdio.h>

int main(){
int i,j,yama[10],temp;
for(i=0;i<10;i++){
scanf("%d",&yama[i]);
}
for(i=0;i<10;i++){
for(j=0;j<10;j++){
if(yama[i]<yama[j])
temp=yama[i];
yama[i]=yama[j];
yama[j]=temp;
}
}
for(i=0;i<3;i++){
printf("%d\n",yama[i]);
}
return 0;
}

C++: #include<iosteam>

int main(){
    int a[10], i, j ,n;
    for(i=0;i<10;i++){
        cin>>a[i];
        }
        
        for(i=0;i<10;i++){
        	for(j=i+1;j<10;j++){
        		if(a[i]<a[j]){
			n=a[i];
			a[i]=a[j];
			a[j]=n;
			}
		}	
	}
	for(i=0;i<3;i++){
	cout<<a[i]<<endl;
	}       	
	
	return 0;
}

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

int main(){
	vector<int> data;
	for(int i=0;i<10;++i){
		int a;
		scanf("%d",&a);
		data.push_back(a);
	}
	sort(data.begin(),data.end());
	vector<int>::iterator it = data.end();
	--it;
	for(int i=0; i < 3 ; --it, ++i)
		printf("%d\n",*it);
	return 0;
}

C++: #include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main(){
  vector<int> n;
  int k;
  for(int i=0; i<10; i++){
    cin >> k;
    n.push_back(k);
  }
  sort(n.begin(), n.end());
  cout << n[9] << "\n" << n[8] << "\n" << n[7] << endl;
  return 0;
}

C++: #include<iostream>
 using namespace std;
int main(){
int input;
int first;
int second;
int third;

for(int i,i<10,i++){
cin>>input;
if(first<input){
 first = input;
}else if(second<input){
 second = input;
}else if(third<input){
 third = input;
}


}
cout<<first<<endl<<second<<endl<<third;<<endl;
return 0;

}

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

using namespace std;

int main()
{
	int i, num;
	deque<int> mountainheight;
	for ( i = 0; i < 10; i++ ) {
		scanf("%d",&num);
		mountainheight.push_back(num);
	}
	sort( mountainheight.begin(), mountainheight.end(), greater<int>() );

	deque<int>::iterator it = mountainheight.begin();
	for( i = 0; i < 3; i++ ) {
		cout << *it << endl;
		it++;
	}

	return 0;
}

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

int main(){
	vector<int> x(10);
	for(auto &a:x){
		cin >> a;
	}
	sort(x.begin(),x.end(),greater<int>());
	for(int i = 0; i < 3; i++){
		cout << x[i] << endl;
	}
	
	return 0;
}

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

#define pb push_back
  
using namespace std;

int main(void){
  int n;
  vector<int> height;

  for(int i = 0;i < 10;i++){
    cin >> n;
    height.pb(n);
  }
  sort(height.begin() , height.end());
  
  for(int i = 9; i > 6;i--){
    cout << height.at(i) << endl;
  }  
  return 0;
}

C++: #include<iostream>

using namespace std;

int main(void){

	int h;
	int i;
	int best[3]={0,0,0};

	for(i=0;i<10;i++){

		cin>>h;

		if(best[0] < h ){
			best[2] = best[1];
			best[1] = best[0];
			best[0] = h;
		}
		else if(best[1] < h){
			best[2] = best[1];
			best[1] = h;
		}else if(best[2] < h){
			best[2] =h;
		}
	}

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

	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);
	for (int i=10; i>7; --i)
		cout << m[i] << '\n';
	return 0;
}

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

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

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

int gunung[10];

int main()
{
	for(int a=0;a<10;a++)
	{
		scanf("%d",&gunung[a]);
	}
	sort(gunung,gunung+10);
	for(int a=9;a>6;a--)
	{
		printf("%d\n",gunung[a]);
	}
	return 0;
}

C++: #include<iostream>

void bubblesort(int *M){

  int u = 0,temp;

  while(u!=9){
    for(int i=9;i>u;i--){
      if(M[i]>M[i-1]){
        temp = M[i];
        M[i] = M[i-1];
        M[i-1] = temp;
      }
    }
    ++u;
  }
}
int main(){

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

  bubblesort(M);

  std::cout << M[0] << std::endl << M[1] << std::endl << M[2] << std::endl;

  return 0;
}

C++: #include<stdio.h>
int main(void)
{
	int i,j,n,temp;
	int data[10];
	n = 1;
	for(i=0; i<10; i++){
		printf("%d ",n);
		n++;
		scanf("%d",&data[i]);
	}

	for(i=0; i<9; i++){
		for(j=i+1; j<10; j++){
			if(data[i] > data[j]){
				temp=data[i];
				data[i]=data[j];
				data[j]=temp;
			}
		}

	}

		printf("%d\n",data[9]);
		printf("%d\n",data[8]);
		printf("%d\n",data[7]);
	return 0;
}

C++: #include <bits/stdc++.h>
#define ll long long
#define un unsigned
#define de double
#define pi acos(-1.0)
#define FF first
#define SS second
#define pb push_back
#define mp make_pair
#define mem(ae, value) memset(ae, value, sizeof(ae))
#define all(x) x.begin( ), x.end( )
#define UNIQUE(x) x.resize(unique(all(x)) - x.begin())
#define FASTER ios_base::sync_with_stdio(0)
#define loop(begin, end) for(u int i=begin; i<=end; i++)
#define Read freopen("in.txt", "r", stdin)
#define Write freopen("out.txt", "w", stdout)
#define nl '\n'

using namespace std;

template<class T> inline T sq(T x) { return x*x; }
template <class T> inline T gcd(T a, T b) { if(b == 0) return a; return gcd(b, a%b); }
template <class T> inline T lcm(T a, T b) { return ( a/gcd(a, b) ) * b; }
template <class T> inline T power(T b, T p)
{
    if(p == 0) return 1;
    if(p == 1) return b;
    if(p&1) return b*power(b, p-1);
    else return sq(power(b, p>>1));
}

int main(int argc, char **argv)
{
    vector<int> v;
    int i=0;
    while(i<10)
    {
        int n; cin >> n;
        v.pb(n);
        i ++;
    }
    sort(all(v), greater<int>());
    cout << v[0] << nl << v[1] << nl << v[2] << nl;
    v.clear( );
    
    return 0;
}