Go: package main

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

var maxint = 10000
var scanner = bufio.NewScanner(os.Stdin)

func nextInt() (int, error) {
	scanner.Scan()
	return strconv.Atoi(scanner.Text())
}

func main() {
	scanner.Split(bufio.ScanWords)
	arr := make([]int, 10)
	for i := range arr {
		n, _ := nextInt()
		arr[i] = n
	}

	sort.Slice(arr, func(i, j int) bool {
		return arr[i] >= arr[j]
	})

	arrStr := fmt.Sprintf("%+v", arr[0:3])
	arrStr = arrStr[1:(len(arrStr) - 1)]
	arrStr = strings.Replace(arrStr, " ", "\n", -1)
	fmt.Println(arrStr)
}

C++: #include<iostream> 
#include<algorithm>
using namespace std;
void bubblesort(int A[]){
	for(int i=0;i<10;i++){
		for(int j=10-1;j>i;j--){
			if(A[j]>A[j-1]){
			int t=	A[j-1];
			A[j-1]=A[j];
			A[j]=t;
			}
		}
	}	
}
int main(){
	int A[10];
	int a; 
	for(int i=0;i<10;i++){
		
		cin>>a;
		if(a>0&&a<10000)A[i]=a;
		
	}
	for(int i=0;i<3;i++)
	{
		bubblesort(A);
		if(i>0)cout<<endl;
		cout<<A[i];
	  } 
	 return 0;
}

C++: #include<iostream>
int main() {
	int m[10];
	for (int i = 0; i < 10; ++i) {
		std::cin >> m[i];
	}
	for (int i = 0; i < 10; ++i) {
		for (int j = 0; j < 10; ++j) {
			int a;
			if (m[i] < m[j]) {
				a = m[i];
				m[i] = m[j];
				m[j] = a;
			}
		}
	}
		std::cout << m[9] << std::endl;
		std::cout << m[8] << std::endl;
		std::cout << m[7] << std::endl;
		return 0;
	}

C++: #include<iostream>
#define element 10

using namespace std;

int height[element];
int number;
int main()
{
 for(int i=0;i<element;++i)
 {
  cin >> height[i];
 }
 for(int i=0;i<element;++i)
 {
  for(int j=i;j<element;++j)
  {
   if(height[i]<height[j])
   {
    number = height[i];
    height[i] = height[j];
    height[j] = number;
   }
  }
 }
 printf("\n%d\n%d\n%d\n",height[0],height[1],height[2]);
 return 0;
}

C++: #include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <vector>
#include <iostream>
#include <set>
using namespace std;
typedef long long ll;

int a[10];

int main(int argc, char const *argv[]) {
	for (int i = 0; i < 10; i++) cin >> a[i];
	sort(a, a+10);
	for (int i = 9; i > 6; i--) cout << a[i] << endl;
	return 0;
}

C++: #include<iostream>
#include<string.h>
#include<stdio.h>

using namespace std;

int main(){
    int top3Mountain[3];
    memset(top3Mountain, 0, sizeof(top3Mountain));
    
    for (int i=0; i<10; i++) {
        int newHeight = 0;
        scanf("%d", &newHeight);
        
        if (top3Mountain[0] < newHeight) {
            top3Mountain[2] = top3Mountain[1];
            top3Mountain[1] = top3Mountain[0];
            top3Mountain[0] = newHeight;
        } else if (top3Mountain[1] < newHeight) {
            top3Mountain[2] = top3Mountain[1];
            top3Mountain[1] = newHeight;
        } else if (top3Mountain[2] < newHeight) {
            top3Mountain[2] = newHeight;
        }
    }
    
    for (int i=0; i<3; i++) {
        printf("%d\n", top3Mountain[i]);
    }
    
    return 0;
}

C++: int main(){
int a[10];
int max = 0;
int max2 = 0;
int max3 = 0;
int i;
int tmp;

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

for(i = 0; i< 10; i++){
if(max < a[i]){
max = a[i];
tmp = i;
}
}


int tmp2;
for(int i = 0; i< 10; i++){
if(max2 < a[i] && tmp != i){
max2 = a[i];
tmp2 = i;
}
}

for(i = 0; i< 10; i++){
if(max3 < a[i]&& tmp != i&& tmp2 != i) max3 = a[i];
}

std::cout << max<< std::endl;
std::cout << max2<< std::endl;
std::cout << max3<< std::endl;



	return 0;
}

C++: #include<iostream>
using namespace std;
   
int main(void){
   
  int h[10];
　int a = 0;
   
  std::cin >> h;
   
  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 <iostream>
#include <algorithm>
using namespace std;

int i,a[10]={};

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

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

int main(void){
    int height[10];
    for(int i=0;i<10;i++)
        std::cin>>height[i];
    std::sort(height,height+10);
    std::cout<<height[0]<<std::endl<<height[1]<<std::endl<<height[2]<<std::endl;
    return 0;
}

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

int main() {
 int top[5]={0,0,0,0,0};
 int yama;

 cin >> top[0];
 
 for(int i=0; i<9; i++){
  cin >> yama;
  
  for(int j=0; j<3; j++){
   if(yama >top[j]){
    top[j+2] = top[j+1];
    top[j+1] = top[j];
    top[j] =yama;
    break;
   }
  }
 }
 for(int i=0; i<3; i++)
  cout << top[0] << endl;

 return 0;
}

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

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

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

int main(void) {
    vector<int> v;
    for (int i = 0; i < 10; i++) {
        int input;
        scanf("%d", &input);
        v.push_back(input);
    }
    sort(v.rbegin(), v.rend());
    for (int i = 0; i < 3; i++) {
        printf("%d\n", v[i]);
    }
}

C++: #include <iostream>
using namespace std;
int main(){
	int mount[10];
	for(int num=0;num<10;num++){
	 // cout << "Mount"<<num << endl;
	  cin >> mount[num];
    }
    for(int i=0;i<10;i++){
     for(int j=i+1;j<10;j++){
	  if(mount[i]<mount[j]){
	 	 int sub=mount[j];
	 	 mount[j]=mount[i];
	 	 mount[i]=sub;
	   }
     }
    }
   cout << mount[0] << endl;
   cout << mount[1] << endl;
   cout << mount[2] << endl;
  return 0;
}

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

int main(){
	int nya[10];
	int hoge;
	for (int j=0;j<10;j++) {
		cin >> nya[j];
	}
	for (int i=0;i<20;i++){
		for (int k=1;k<10;k++){
			if (nya[k] > nya[k-1]) {
				hoge = nya[k-1];
				nya[k-1] = nya[k];
				nya[k] = hoge;
			}
		}
	}
//	for(int i=0;i<10;++i)	cout << nya[i] <<endl;
	cout << nya[0] << endl << nya[1] << endl << nya[2] << endl;
	return 0;
}

C++: #include <iostream>
using nameplace std;
int main(){
   int h[10];
 for(int i=0;i<10;i++){
      cin>>h[i];
 }
 for(int k=0;i<10;i++){
  for(int j=0;j<10-i;j++){
        if(h[j]<h[j+1]){
          swap(h[j],h[j+1]);
         }
      }
}
cout<<h[0]<<endl;
cout<<h[1]<<endl;
cout<<h[2]<<endl;
return 0;
}

C++: #include <stdio.h>

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

    bool Flg  = false;
    while( true ) {
        for( int i = 0;i < 10 - 1;i++ ){
            if( m_Higher[i] < m_Higher[i+1] ){
                int buf = m_Higher[i];
                m_Higher[i] = m_Higher[i+1];
                m_Higher[i+1] = buf;
                Flg = true;
            }
        }
        if( !Flg ) break;
        Flg = false;
    }

    for( int i = 0;i < 3;i++ ) printf( "%d",m_Higher[i] );
    return 0;
}

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

int main(){
	int suchi,high=0,middle=0,low=0,i,flag=0,a,b,c;
	
	for(i=0;i<10;i++){
		cin>>suchi;
			
		if(flag==0){
			low=suchi;
			middle = suchi;
			high = suchi;
			flag++;
			}
			
		else{
			if(suchi>low&&suchi<middle)
				low = suchi;
			
			else if(suchi>middle&&suchi<high){
				low = middle;
				middle = suchi;
			}
			
			else if(suchi>high){
				low = middle;
				middle = high;
				high = suchi;
			}
				
			}
	}
	
	cout<<high<<endl;
	cout<<middle<<endl;
	cout<<low<<endl;
	
	return 0;
}

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

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

	return 0;
}

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

int main(){
	int date[10], work;
	for(int i = 0; i < 10; i++){
		cin >> date[i];
	}

	for(int i = 9; i > 6; i--){
		for(int j = i; j >= 0; j--){
			if(date[i] < date[j]){
				work = date[i];
				date[i] = date[j];
				date[j] = work;
			}
		}
		cout << date[i] << endl;
	}
	return 0;
}