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 argc, const char * argv[]) {
    
    int top1=0, top2=0, top3=0 ;
    
    for (int i=0; i<10; i++) {
        int inputNum ;
        std::cin >> inputNum ;
        if ( inputNum > top1 ) {
            top3 = top2 ;
            top2 = top1 ;
            top1 = inputNum ;
        } else if ( inputNum > top2 ) {
            top3 = top2 ;
            top2 = inputNum ;
        } else if ( inputNum > top3 ) {
            top3 = inputNum ;
        }
    }
    
    printf("%d\n%d\n%d\n", top1, top2, top3) ;
    
    return 0;
}

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 = 0; i < 3; i++)
		cout << height[9 - i] << endl;
}

C++: #include<cstdio>
#include<iostream>
using namespace std;
int a[11];
int main()
{
	int i,max1=-1,max2=-1,max3=-1;
	for(i=1;i<=10;i++)
	{
		cin>>a[i];
		if(a[i]>max1){max3=max2;max2=max1;max1=a[i];}
		else if(a[i]>max2){max3=max2;max2=a[i];}
		else if(a[i]>max3)max3=a[i];
	}
	cout<<endl<<max1<<endl<<max2<<endl<<max3;
	return 0;
}

C++: #include<stdio.h>
int main ()
    {
        int number[30];
        int i,j,a,n;
        scanf("%d",&n);
        for (i=0;i<n;i++)
	        scanf("%d",&number[i]);
        for (i=0;i<n;i++)
        {
            for (j=i+1;j<n;j++)
            {
                if (number[i]<number[j])
                {
                    a=number[i];
                    number[i]=number[j];
                    number[j]=a;
                }
            }
        }
        for (i=0;i<3;i++)
            printf("%d\n",number[i]);
    }

C++: #include<bits/stdc++.h>
using namespace std;
int main(void){
    int m[11];
    for(int i=0; i<10; i++){
        cin >> m[i];
    }
    sort(m, m+10);
    for(int i=9; i>6; i--){
        cout << m[i] << "\n";
    }
    
    
    return 0;
}

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

}

C++: #include<stdio.h>
#include<iostream>
#include<stdlib.h>
#include<string.h>
using namespace std;
const int inf = 0x3f3f3f;
int main()
{
    int a[20];
    bool vis[20];
    memset(vis,0,sizeof(vis));
    for(int i = 1 ; i <= 10 ; i++)
        scanf("%d",&a[i]);
    for(int k = 1 ; k <= 3 ; k++)
    {
        int maxx = -inf ,t;
        for(int i = 1 ; i <= 10 ; i++)
        {
            if(!vis[i] && maxx < a[i])
            {
                maxx = a[i];
                t = i;
            }
        }
        vis[t] = 1;
        printf("%d\n",maxx);
    }
}

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

int main(){
	int hills[10];
	char string[256];
	fgets(string, 256, stdin);
	for (int i = 0; i < 10; i++){
		char* one;
		one = strtok(string, "\n");
		hills[i] = atoi(one);
	}
	int top[4] = {0};
	for (int i = 0; i < 10; i++){
		if (hills[i] > top[0]){
			top[3] = top[2];
			top[2] = top[1];
			top[1] = top[0];
			top[0] = hills[i];
		}else if (hills[i] > top[1]){
			top[3] = top[2];
			top[2] = top[1];
			top[1] = hills[i];
		}else if (hills[i] > top[2]){
			top[2] = top[1];
			top[1] = hills[i];
		}
	}
	fprintf(stdout, "%d\n%d\n%d",top[0],top[1],top[2]);
	return 0;
}

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

int main(){
	list<int> yama;
	int tmp=0;
	while(yama.size()<10){
		cin>>tmp;
		yama.push_back(tmp);
	}
	yama.sort(greater<int>());
	list<int>::iterator it=yama.begin();
	for(int i=0;i<3;i++){
		cout<<*it<<endl;
		it++;
	}
	
	return 0;
}

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

using namespace std;

int main(){

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

	}
	sort(a,a+10);
	cout<<a[9]<<endl;
	cout<<a[8]<<endl;
	cout<<a[7]<<endl;

return 0;
}

C++: #include<iostream>
#include<vector>
#include<algorithm>
int main(void){
std::vector<int> h;
int tmp;
while(std::cin>>tmp){
h.push_back(tmp);
}

std::sort(h.begin(),std::remove_if(h.begin(),h.end(),[](int x) { return x>=10000; }));

for(int i=0;i<3;i++){
std::cout<<h[i]<<std::endl;
}
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);
	for(int i=0;i<3;i++){
		cout<<a[i]<<endl;
	}
	return 0;
}

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

using namespace std;
int main() {
    vector<int> h;
    for(int i=0;i<10;i++){
        int tmp;
        cin >> tmp;
        h.push_back(tmp);
    }

    sort(begin(h),end(h));

    for(int i=0;i<3;i++){
        cout << h[9-i] << endl;
    }
    return 0;

}

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

int main()
{
    int a[10];
    int i;

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

    sort(a, a+10);

    cout<<a[9]<<endl;
    cout<<a[8]<<endl;
    cout<<a[7]<<endl;

    return 0;
}

C++: #include<iostream>

using namespace std;

int main() {
	int x = 0;
	int y = 0;
	int z = 0;
	int a[10];
	for(int i=0;i<10;i++){
		cin >> a[i];
	}
	for(int j=0;j<10;j++){
		if(x < a[j]) {
			z = y;
			y = x;
			x = a[j];
		}else if (y < a[j]){
			z = y;
			y = a[j];
		}else if (z < a[j]){
			z = a[j];
		}
	}
	cout << x << endl;
	cout << y << endl;
	cout << z << endl;
	return 0;
}

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

int main(){
	int yama[10];
	for(int i=0;i<10;i++){
		cin>>yama[i];
	}
	for(int i=0;i<9;i++){
      for(int j=9;j>i;j--){
		  if(yama[j]>yama[j-1]){
			  int t=yama[j];
			  yama[j]=yama[j-1];
			  yama[j-1]=t;
		  }
	  }
	}
	for(int i=0;i<3;i++){
		cout<<yama[i]<<endl;
	}
    return 0;
}

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

 using namespace std;

 int main(){

     ifstream ifs("input1.txt");

     int i;
     int height[3]={};
     int tmp, tmp2;
     string str;

     while(getline(ifs,str)){
         sscanf(str.c_str(),"%d",&tmp);
         if(0<=tmp && tmp <=10000){
             for(i=0;i<3;i++){
                 if(height[i] < tmp){
                     tmp2 = height[i];
                     height[i] = tmp;
                     tmp = tmp2;
                 }
             }
         }
     }

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

     return 0;
 }

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

int main()
{
	int i, h;
	int mh[3] = {0};

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

		cin>>h;
		if(0<=h && h<=10000)
		if(mh[0] < h){
			mh[2] = mh[1];
			mh[1] = mh[0];
			mh[0] = h;
		}
		else if(mh[1] < h){
			mh[2] = mh[1];
			mh[1] = h;
		}
		else if(mh[2] < h) mh[2] = h;

	}
	for(i=0;i<3;i++)	cout<<mh[i]<<endl;

	

	return 0;
}

C++: #include <iostream>
#include <algorithm>
#include <vector>
#include <functional>
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(), greater<int>());
  for(int i=0; i<3; i++)
    cout << v[i] << endl;
}