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 <bits/stdc++.h>
#define rep(i,n)for(int i=0;i<n;i++)
using namespace std;
typedef long long ll;

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

C++: 

#include <iostream>

using namespace std;

int main(int argc, const char * argv[])
{

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

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

int main(){
    std::set<int> s = {1819, 2003, 876, 2840, 1723, 1673, 3776, 2848, 1592, 922};
    auto itr = s.begin();
    for(int i = 0; i < 3; ++i) {
        std::cout << *itr << std::endl;
        ++itr;
    }
    return 0;
}

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

int main(){
	int max1=-1,max2=-1,max3=-1;
	for(int i=0;i<10;i++){
		int n;
		cin >> n;
		if (max1<n){
			max3=max2;
			max2=max1;
			max1=n;
		}
		else if (max2<n){
			max3=max2;
			max2=n;
		}
		else if (max3<n){
			max3=n;
	}
	}
	cout << max1 << endl <<max2 <<endl << max3 <<endl; 
	return 0;
}

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

int main() {
	int m[10];

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

	sort(m,m+10,greater<int>());

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

	return 0;
}

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

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

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

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

int main(){
	list<int> height_list(10);

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

	height_list.sort(greater<int>());
	list<int>::iterator ite = height_list.begin();
	for(int i=0; i<3; ++i){
		cout << *ite++ << endl;
	}
	return 0;

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

int i =0;
int nums[10000]={};

int main(){
while(scanf("%d",nums+i)!=EOF) i++;
sort(nums,nums+i);
for(int j =i-1,c=0;c++<3;j--) printf("%d\n",nums[j]);
    return 0;
}

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

int main() {
	int h[10],max;
	for (int i = 0; i < 10; i++) {
		cin >> h[i];
	}
	
	for (int j = 0; j < 3; j++) {
		max = 0;
		for (int i = 1; i < 10; i++) {
			if (h[max] < h[i])
				max = i;
		}
		cout << h[max] << "\n";
		h[max] = -1;
	}
	return 0;
}

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

int main(void) {
    std::priority_queue<int> heights;
 
    for (int h, i = 0; i < 10; ++i) {
        std::cin >> h;
        heights.push(h);
    }
 
    for (int i = 0; i < 3; ++i) {
        std::cout << heights.top() << std::endl;
        heights.pop();
    }

    return 0;
}

C++: #include<iostream>
 using namespace std;
int main(){
int input[10];
int first;
int second;
int third;
for(int i=0,i<10,i++){
cin>>input[i];
if(first<input){first = input[i];}else 
if(second<input){second = input[i];}else 
if(third<input){third = input[i];}
}
cout<<first<<endl;
cout<<second<<endl;
cout<<third<<endl;
return 0;

}

C++: #include<stdio.h>

int main()
{
	int high[10] = {1819,2003,876,2876,1723,1673,3776,2848,1592,922};
	int cases;
	
	for(int i=0;i<9;i++)
	{
		for(int j=i+1; j<10; j++)
		{
			if(high[i] < high[j])
			{
				cases = high[i];
				high[i] = high[j];
				high[j] = cases;
			}
		}
	}
	
	printf("%d",high[0]);
	printf("%d",high[1]);
	printf("%d",high[2]);
	
	return 0;
}

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

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

C++: #include <cstdio>
#include <iostream>
#include <cmath>
#include <cstring>
#include <cstdlib>
#include <cctype>
#include <algorithm>
#include <string>
using  namespace  std;
int main()
{
    long long int ar[12];
    for(int i=0;i<10;i++)
        cin>>ar[i];
    sort(ar,ar+10);
    cout<<ar[9]<<'\n'<<ar[8]<<'\n'<<ar[7]<<'\n';
    return 0;
}

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<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("2番目に高い山の高さ %d\n",data[8]);
		printf("3番目に高い山の高さ %d\n",data[7]);
	return 0;
}

C++: #include <iostream>
using namespace std;
int main(){
    int h[10];
    for(int i=0;i<10;i++){
        cin >> h[i];
    }
    for(int s=0;s<9;s++){
        for(int t=s+1;t<10;t++){
            if(h[s]<h[t]) swap(h[s],h[t]);
        }
    }
    cout << h[0] << "\n" << h[1] << "\n" << h[2] <<endl;
    return 0;
}

C++: #include<iostream>
using namespace std;
   
int main(void){
   
  int h[10];
  int a = 0;
   

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

C++: #include <stdio.h>

int main(){
	int i,j;
	int h1=0,h2=0,h3=0;
	
	for(i=1;i<=10;i++){
		scanf("%d\n",&j);
		if(j>=h1){
			h3=h2;
			h2=h1;
			h1=j;
		}
		else if(j>=h2){
			h3=h2;
			h2=j;
		}
		else if(j>=h3){
			h3=j;
		}
	}
	printf("%d\n%d\n%d\n",h1,h2,h3);
	return 0;
}

C++: #include <iostream>

using namespace std;

int main() {
    int top[3] {};

    for (int i = 0; i < 10; ++i) {
        int h;
        cin >> h;

        if (h > top[2]) {
            if (h > top[1]) {
                top[2] = top[1];
                if (h > top[0]) {
                    top[1] = top[0];
                    top[0] = h;
                }
                else top[1] = h;
            }
            else top[2] = h;
        }

    }

    for (auto t : top) {
        cout << t << endl;
    }
}

C++: #include <iostream>

using namespace std;

int main()
{
   int mountain [10] = {100,400,550,800,150,700,1800,6000,7800,890};
   cout << mountain [8] << endl;
   cout << mountain [7] << endl;
   cout << mountain [6] << endl;


    return 0;
}