Go: package main

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

var sc = bufio.NewScanner(os.Stdin)

func read() string {
	sc.Scan()
	return sc.Text()
}

func main() {
	sc.Split(bufio.ScanLines)

	s := make([]int, 10)
	for i := 0; i < 10; i++ {
		s[i], _ = strconv.Atoi(read())
	}
	sort.Sort(sort.Reverse(sort.IntSlice(s)))
	fmt.Println(s[0])
	fmt.Println(s[1])
	fmt.Println(s[2])
}

C++: #include <iostream>

int main()
{
        int best[] = {0, 0, 0};
        int t = 0;
        for(int i = 0; i < 10; ++i)
        {
                std::cin >> t;
                for(int j = 0; j < 3; ++j)
                        if(t > best[j])
                        {
                                for(int k = 2; k > j; --k)
                                        best[k] = best[k - 1];
                                best[j] = t;
                                break;
                        }
        }
        for(int i = 0; i < 3; ++i)
                std::cout << best[i] << std::endl;
        return 0;
}

C++: #include <stdio.h>

int main() {
    
    int n = 0, m = 0, l = 0;
    
    int i, tmp;
    for (i = 1; i <= 10; i++) {
      
        scanf("%d", &tmp);
        if (n < tmp) l = m; m = n; n = tmp; continue;
        if (m < tmp) l = m; m = tmp; continue;
        if (l < tmp) l = tmp; continue;
        
    }
    
    printf("%d\n%d\n%d\n", n, m, l);
    
    return 0;
}

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

#define DATA_NUM 10

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

int main()
{
        int height[DATA_NUM];
        int max, tmp;

        for(int i=0; scanf("%d\n",&height[i])!=EOF; i++){;}

        for(int i=0; i<DATA_NUM; i++){
                for(int j=i+1; j<DATA_NUM; j++){
                        if(height[i]<height[j]){
                                swap(height[i], height[j]);
                         }
                }
        }
        
        for(int i=0; i<3; i++){
                cout << height[i] << endl;
        }

        return 0;
}

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

using namespace std;

int main()

{
	int a, i;
	
	vector<int> takasa;
	
	for(i = 0; i < 10; i++)
	{
		cin >> a;
		takasa.push_back(a);
	}
	
	
	sort(takasa.begin(), takasa.end());
	
	
	cout << takasa[9] << endl;
	cout << takasa[8] << endl;
	cout << takasa[7] << endl;
	
	
	return 0;
	
}

C++: #include <iostream>
#include <stdio.h>
using namespace std;
int height[10];
void sort(int A[]);
void swap(int &a, int &b);
int main()
{
	int n = 10;
	for (int i = 0; i < 10; i++)
		cin >> height[i];
	sort(height);
	return 0;
}
void sort(int A[])
{
	int i, j, min;
	for (i = 0; i < 9; i++)
	{
		
		for (j = 1; j > 10-i-1; j++)
		{
			if (A[j] > A[j+1])
			{
				swap(A[j], A[j+1]);
			}
		}
	}
	for (i = 0; i < 3; i++)
	{
		printf("%d\n", A[i]);
	}
}
void swap(int &a, int &b)
{
	int t ;
	t = a;
	a = b;
	b = t;
}

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

int main (void)
{
	int a[10] , max , min;
	for(int i = 0 ; i < 10 ; i++)
	{
		scanf("%d" , &a[i]);
	}
	for(int i = 0 ; i < 9 ; i++)
	{
		for(int j = i + 1 ; j <= 9 ; j++)
		{
			if(a[j] > a[i])
			{
				int z;
				z = a[j];
				a[j] = a[i];
				a[i] = z;
			}
		}
	}
	for(int i = 0 ; i < 3 ; i++)
	{
		printf("%d\n" , a[i]);
	}
	return 0;
}

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

using namespace std;

int main(void)
{
	int input[10];

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


	for(int i = 3; i < 10; i++){
		for(int j = 0; j < 3; j++){
			if(input[i] > input[j]){
				input[j] = input[i];
				break;
			}
		}
	}

	sort(input, input+2);

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


	return 0;
}

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

int main(){

	int h[9];
	int i,j,a; //ループ用変数
	int temp;



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

		cout<< a << "つ目の" <<"値を代入してください" << endl;
		cin >> h[a];
	}

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

			if(h[i]>h[j]){
				temp=h[i];
				h[i]=h[j];
				h[j]=temp;

			}
		}
	}

	cout << "最も高い山は :" << h[0] << endl;

	cout << "２番目に高い山は :" << h[1] << endl;

	cout << "３番目に高い山は :" << h[2] <<endl;


	return 0;


}

C++: 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<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
  int x;
  vector<int>a;
  for(int i=0;i<10;i++){
    cin>>x;
    a.push_back(x);
  }
  sort(a.begin(),a.end()); 
  cout<<a[9]<<endl;
  cout<<a[8]<<endl;
  cout<<a[7]<<endl;
}

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

int main()
{
  int high;
  int temp1,temp2;
  int first=0,second=0,third=0;
  
  for(int i=0;i<10;i++){
    cin>>high;
    if(high>first){
      temp1=first;
      first=high;
      temp2=second;
      second=temp1;
      third=temp2;
    } else if (first>=high && high>second){
      temp2=second;
      second=high;
      third=temp2;
    } else if (second>=high && high>third){
      third=high;
    }
  }

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

C++: //10ÂÌf[^ðÇÝÝAãÊ3Âð\¦¹æ
#include<iostream>
#include<algorithm>
#include<functional>
using namespace std;

int main(void)
{
	const int N = 10;
	int a[N];
	int i;
	for(i = 0; i < N; i++)
		cin >> a[i];
	sort(a, a+N, greater<int>());
	for(i = 0; i < 3; i++)
		cout << a[i] << endl;
	return 0;
}

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

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

  sort(h, h+10);

  cout<<h[9]<<h[8]<<h[7]<<endl;
  return 0;
}

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

int main()
{
  int mt[10];
  int high[3];
  int height;
  

  for(int i=0;i<=9;i++)
    {
      cin >> height;
      mt[i] = height;
    }

  for(int i=0;i<=2;i++)
    {
      high[i] = 0;
    }

  for(int i=0;i<=9;i++)
    {
      if(mt[i]>=high[2])
	{
	  high[2] = mt[i];
	}
      if(mt[i]>=high[1])
	{
	  high[2] = high[1];
	  high[1] = mt[i];
	}
      if(mt[i]>=high[0])
	{
	  high[2] = high[1];
	  high[1] = high[0];
	  high[0] = mt[i];
	}
    }

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

  return 0;
}

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

int main(){
 int mountain,first=0,second=0,third=0;
 for(int i=0;i<10;i++){
  cin>>mountain;
  if(mountain>first){
   third=second;
   second=first;
   first=mountain;
  }else if(mountain>second){
   third=second;
   second=mountain;
  }else if(mountain>third){
   third=mountain;
  }
 }
 count<<first<<'\n'<<second<<'\n'<<third;
 return 0;
}

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

using namespace std;

int main()
{
  int a[10];

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

  return 0;
}

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

using namespace std;

const int N = 10;
int a[N];

int main() {
  for(int i = 0; i < N; i++) {
    scanf("%d", &a[i]);
  }
  sort(a, a+N);
  for(int i = 0; i < 3; i++) printf("%d\n", a[i]);
}

C++: #include <stdio.h>
int main(void){
    int a=0,b=0,c=0,n;
    while(scanf("%d",&n)>0){
        if(n>c)c=n;
        if(c>b)n=b,b=c,c=b;
        if(b>a)n=a,a=b,b=a;
    }
    printf("%d\n%d\n%d\n",a,b,c);
    return 0;
}

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