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>

int main(){
	int i;
	int c,a[3];
	c=0;
	for(i=0;i<10;i++){
		scanf("%d",c);
		if(c>a[0]){
			a[2]=a[1];
			a[1]=a[0];
			a[0]=c;
		}else if(c>a[1]){
			a[2]=a[1];
			a[1]=c;
		}else if(c>a[2]){
			a[2]=c;
		}
	}

	for(i=0;i<3;i++)printf("%d\n",a[i]);
	return 0;
}

C++: #include<iostream>
 using namespace std;
int main(){
int input[10];
int first;
int second;
int third;
int i=0
for(;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 <cstdio>
#include <functional>
#include <algorithm>

using namespace std;

int main(void)
{
  int i;
  int heights[10];

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

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

  for (i = 0; i < 3; i++) {
    printf("%d\n", heights[i]);
  }

  return 0;
}

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

int main(){
	bool flag;
	int result[3],buf,temp[10];
	for(int i = 0; i < 10; i++){
		cin >> temp[i];
	}
	for(int l = 0; l < 3; l++){
		while(1){
			for(int j = l; j < 9; j++){
				if(temp[j] < temp[j+1]){
					buf = temp[j+1];
					temp[j+1] = temp[j];
					temp[j] = buf;
				}
			}
			flag = false;
			for(int k = 0; k < 9; k++){
				if(temp[l] < temp[k]) flag = true;
			}
			if(flag != true){
				result[l] = temp[l];
				break;
			}
		}
	}
	cout << result[0] << endl;
	cout << result[1] << endl;
	cout << result[2] << endl;
	return 0;
}

C++: #include<stdio.h>
#include<algorithm>
  
int main() {
    int m[10];
 
    for (int i = 0; i < 10; i++)scanf("%d",%m[i]);
 
    stable_sort(m, m + 10);
 
    for (int i = 9; i > 6; i--)printf("%d\n",&m[i]);
 
    return 0;
}

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

int main()
{
    int A[10];
       
    for (int i=1; i<=10; i++)
    {
        cout << "height of mountain " << i;
        cin >> A[i];
    }
    
    sort (A, A+10);
    reverse(A, A+10);
    
    for (int e=1; e<=3; e++)
    {
        cout << "height of the" << e << "st mountain" << A[e] << endl;
    }

    return 0; 
}

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

int main(){
	std::vector<int> o;
	for(int i=1;i<=10;i++)int in=0,o.push_back(in);
	std::sort(o.begin(),o.end());
	std::cout<<o[7]<<std::endl<<o[8]<<std::endl<<o[9]<<std::endl;
}

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

using namespace std;


int main(){

	int i,j;
	int top1=0, top2=0, top3=0;
	int temp1, temp2;

	for(i=0 ; i<10 ; i++){
		cin >> temp1;
		if(temp1 >= top1){
			top3 = top2;
			top2 = top1;
			top1 = temp1;
		}else if((temp1 < top1) && (temp1 >= top2)){
			top3 = top2;
			top2 = temp1;
		}else if(temp1 >= top3){
			top3 = temp1;
		}
	}

		cout << top1 << endl;
		cout << top2 << endl;
		cout << top3 << endl;

	return 0;
}

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

int main() {
  int array[10], tmp;

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

  for(int j = 0; i < 10; j++) {
    for(int k = 0; k < 9; k++) {
      if (array[k] < array[k+1]) {
        tmp = array[k];
        array[k] = array[k+1];
        array[k+1] = tmp;
      }
    }
  }

  for(int l = 0; l < 3; l++) {
    cout << array[l] << 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);
	cout<<a[9]<<endl<<a[8]<<endl<<a[7]<<endl;
	return 0;
}

C++: #include<stdio.h>
int main(void)
{
	int a,b,max= 0,max2=0,max3=0;
	for(a 1;a<=10;a++){
		scanf("%d",&b);
		if(b>max) {
			max=b;
		}
		else if(b>max2){
			max2=b;
		}
		else if(b>max3){
			max3=b;
		}
	}
		printf("%d\n %d\n %d\n",max,max2,max3);
		return 0;
}

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

int main(){
	int a[10];

	for (int i = 0; i != 10; i++)
		std::cin >> a[i];
	std::sort(a, a + 10, std::greater<int>());
	for (int j = 0; j != 3; j++)
		std::cout << a[j] << std::endl;
	return 0;
}

C++: #include<stdio.h>
#include<math.h>
#include<algorithm>

int main()
{
	int x[10];
	for (int i = 1; i <= 10; i++) {
		scanf("%d", &x[i]);
	}
	int m = 0;
	for (int i = 10000; i >= 0; i--) {
		for (int j = 1; j <= 10; j++) {
			if (i == x[j]) {
				printf("%d\n", i);
				m++;
			}
			if (m == 3) {
				break;
			}
		}
		if (m == 3) {
			break;
		}
	}
	return 0;
}

C++: #include<iostream>
#include<queue>
using namespace std;
priority_queue<int> q1;
int main(){
	int i,j;
	for(i=0;i<10;i++){
		cin>>j;
		q1.push(j);
	}
	for(i=0;i<3;i++){
		cout<<q1.top()<<endl;
	}
	return 0;
}

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

int main(){
	vector<int> v(3,0);
	int s;
	for(int i = 0; i < 10; i++){
		sort(v.begin(),v.end());
		cin >> s;
		if(v[0] < s){
			v[0] = s;
		}
	}

	sort(v.begin(),v.end());
	for(int i = 0; i < 3; i++){
		cout << v[2-i] << endl;
	}

}

C++: #include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <string>
#include <sstream>
#include <complex>
#include <vector>
#include <list>
#include <queue>
#include <deque>
#include <stack>
#include <map>
#include <set>
#include <iomanip>
#define rep(i, n) for (int i = 0; i < (int)(n); i++)

using namespace std;

int main() {
	vector<int> a(10.0);
	for (int i = 0; i < 10; i++) {
		cin >> a[i];
	}
	sort(a.rbegin(), a.rend());
	for (int i = 0; i < 3; i++) {
		cout << a[i] << endl;
	}
	return 0;
}

C++: #include<iostream>
using namespace std;
int main(){
	int T,t3=0,t2=0,t1=0;
	for(int i=0;i>10;i++){
		cin>>T;
		if(T>=t1){
			t1=T;
			t2=t1;
			t3=t2;
		}
		else if(T>=t2){
			t2=T;
			t3=t2;
		}
		else if(T>=t3){
			t3=T;
		}
	}
	cout<<t1<<endl<<t2<<endl<<t3;
	return 0;
}

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

int main (){
    int i = 0;
    int height[10];
    for(i = 0; i < 10; i++){
        cin >> height[i];
    }
    //??????????????????
    sort(height, height + 10, greater<int>());
    //???3?????¨???
    for(i = 0; i < 3; i++){
        cout << height[i] << endl;
    }

    return 0;
}

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

int main()
{
	int n[10],i=0;

	while (cin >> n[i])
		i++;
	sort(n,n+i,greater<int>());
	for (int j=0; j < 3; j++) {
		cout << n[j] << endl;
	}
	return 0;
}

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

int main() {
  std::cin.tie(0);
  std::ios::sync_with_stdio(false);

  int i, input;
  vector<int> heights;
  for (i = 0; i < 10; i++) {
    cin >> input;
    heights.push_back(input);
  }

  sort(heights.rbegin(), heights.rend());
  cout << heights.at(0) << endl;
  cout << heights.at(1) << endl;
  cout << heights.at(2) << endl;

  return 0;
}

C++: #include<iostream>

int main(){
    int a[10],i,j,n;
    for(i=0;i<10;i++){
        std::cin>>a[i];
        }
        
        for(i=0;i<9;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++){
	std::cout<<a[i]<<std::endl;
	}       	
	
	return 0;
}