Go: package main

import (
	"fmt"
	"sort"
)

func main() {
	mt := make([]int, 10)

	for i := 0; i < 10; i++ {
		fmt.Scan(&mt[i])
	}

	sort.Ints(mt)
	fmt.Printf("%d\n%d\n%d\n", mt[9], mt[8], mt[7])

}

C++: #include <bits/stdc++.h>
using namespace std;
using lint = int64_t;
#define rep(i, n) for(int i=0; i<(n); ++i)
#define all(v)    begin(v), end(v)
#define in        []{lint n; cin>>n; return n;}()

int main(){
    vector<int> A(10);
    rep( i, 10 ) A[i] = in;
    sort( all(A), greater<int>() );
    rep( i, 3 ) cout << A[i] << "\n";
}

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

int main(){
	int m[10];
	
	for(int i = 0;i < 10;i++){
		cin >> m[i];
		
		while(!((m[i] >= 0)&&(m[i] <= 10000))){
			cout << "wrong value\n";
			cin >> m[i];
		}
	}
	sort(m, m+10,greater<int>());
	
	for(int i = 0;i < 3;i++){
		cout << "\n" << m[i];
	}
	
    return 0;
}

C++: #include <stdio.h>

int sort(int a, int b[], int n)
{
	 if(b[n] > a) return n;
	 else {n++; sort(a, &b[n], n);}
}

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

		y[sort(x[i], y, 0)] = x[i];
	}

	printf("%d\n%d\n%d\n", y[0], y[1], y[2]);

	return 0;
}

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

using namespace std;
 
int main(){
  int x[10],tmp,i,j;

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

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

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

    return 0;
}

C++: #include <map>
#include <set>
#include <list>
#include <cmath>
#include <ctime>
#include <deque>
#include <queue>
#include <stack>
#include <string>
#include <bitset>
#include <cstdio>
#include <limits>
#include <vector>
#include <climits>
#include <cstring>
#include <cstdlib>
#include <fstream>
#include <numeric>
#include <sstream>
#include <iostream>
#include <algorithm>
#include <unordered_map>

using namespace std;

int main(){
	int m;
	int max[3] = {0};
	for(int i = 0; i < 10; i++){
		cin >> m;
		if(m > max[0]){
			max[2] = max[1];
			max[1] = max[0];
			max[0] = m;
		}else if(m > max[1]){
			max[2] = max[1];
			max[1] = m;
		}else if(m > max[2]){
			max[2] = m;
		}
	}
	
	cout << max[0] << endl;
	cout << max[1] << endl;
	cout << max[2] << endl;
	
    return 0;
}

C++: #include<iostream>
int main(){
int a[10000],l=0,t,c=3;
while(std::cin>>a[l++]);
for(int i=0;i<l-1;i++){
for(int j=i+1;j<l;j++){
if(a[i]<a[j]){
t=a[i];a[i]=a[j];a[j]=t;
}
}
}
while(c--)std::cout<<a[2-c]<<std::endl;
}

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

const int SIZE = 10;

int Sort(int A[], int N, int name) {
	int j, i, v;

	for (i = 1; i < N; i++) {
		v = A[i];
		j = i - 1;
		while (j >= 0 && A[j] > v) {
			A[j + 1] = A[j];
			j--;
		}
		A[j + 1] = v;
	}
	return A[name];

}

int main(){
	int Height[10];
	int sort[3];

	cout << "?±±??????????????\?????????????????????(10000?????????????????§??\??????)" << endl;
	for (int i = 0; i < SIZE; i++) {
		cout << "?±±?????????" << i + 1 << ">";
		cin >> Height[i];
		if (Height[i] > 10000) {
			Height[i] = 0;
			cout << "?????????????????\??????????????????" << endl;
			i--;
		}
	}

	sort[0] = Sort(Height, SIZE, 9);
	sort[1] = Sort(Height, SIZE, 8);
	sort[2] = Sort(Height, SIZE, 7);

	cout << "?????????????±±???" << sort[0] << "??§???" << endl;
	cout << "2????????????????±±???" << sort[1] << "??§???" << endl;
	cout << "3????????????????±±???" << sort[2] << "??§???" << endl;

	return 0;
}

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

using namespace std;

const int numOfMountain = 10;

int main(int argc, char** argv){
    int mountainBuf;
    vector<int> mountains;

    for(int i = 0; i <= numOfMountain; i++) {
        mountainBuf = atoi(argv[i]);
        mountains.push_back(mountainBuf);
    }

    sort(mountains.begin(), mountains.end());

    vector<int>::iterator out = mountains.end();
    for(int i = 0; i < 3; i++) {
        cout << *--out << endl;
    }

    return 0;
}

C++: #include <iostream>

int main()
{
    int i,high[10];
    for(i = 0;i < 10;++i){
        cin >> high[i];
    }
    sort(high[0]);
    cout << high[0];
    cout << high[1];
    cout << high[2];
}

void sort(int *a)
{
    int i,first = 0,secand = 0,third = 0;
    for(i = 0;i < 10;++i){
       if(first < *(a + i)){
           first = *(a + i);
       }else if(secand < *(a + i)){
           secand = *(a + i);
       }else if(third < *(a + i)){
           third = *(a + i);
       }
    }
    *a = first;
    *(a + 1) = secand;
    *(a + 2) = third;
}

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

int main(void){
	int mt[10];
	for(int i=0;i<10;i++)
		cin>>mt[i];
	int max_mt[3]={0,};
	for(int j=0;j<3;j++){
		for(int k=0;k<10;k++){
			max_mt[j]=max(max_mt[j],mt[k]);
		}
		cout<<max_mt[j]<<endl;
		for(int ll=0;ll<10;ll++)
			if(max_mt[j]==mt[ll])
				mt[ll]=0;
	}
	return 0;
}

C++: #include <stdio.h>

void main(void)
{

	int a[3] = {0,0,0};
	int b,c;

	for(int i = 0; i < 10; i++){
		scanf("%d", &b);
		for(int j = 2; j >= 0; j--){
			if(a[j] < b){
				c = a[j];
				a[j] = b;
				b = c;
			}
		}
	}
	for(int i = 2; i >= 0; i--)
		printf("%d\n", a[i]);

}

C++: #include<iostream>
using namespace std;
int main() {
	double h1,h2,h3;
	h1=-1;
	h2=-1;
	h3=-1;
	double h;
	for(int i=0;i<10;i++) {
		cin >> h;
		if(h > h1) {
			h3 = h2;
			h2 = h1;
			h1 = h;
		}
		else if(h > h2) {
			h3 = h2;
			h2 = h;
		}
		else if(h > h3) {
			h3 = h;
		}
	}
	
	cout << h1 << endl;
	cout << h2 << endl;
	cout << h3 << 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<iostream>
#include<algorithm>
using namespace std;
 
const int MAX_N = 9;
int a[MAX_N];
   
int main(){
 
    for(int i=0; i<=MAX_N; i++){
        cin >> a[i];
    }
      
    sort(a, a+10);
    cout << a[9] << endl << a[8] << endl << a[7] << endl;
 
    return 0;
}

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

namespace
{
	std::vector<unsigned int> altitude(10);
}

int main()
{
	for (unsigned int i = 0; i < 10; i++)
	{
		std::scanf("%u", &altitude[i]);
	}
	std::sort(altitude.begin(), altitude.end(), std::greater<unsigned int>());
	for (unsigned int i = 0; i < 3; i++)
	{
		std::printf("%u\n", altitude[i]);
	}
	return 0;
}

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

int main(){
	int i=0;
	int m[10];
	for(i=0;i<10;i++)
	{
		cin>>m[i];
		while(0>m[i]||m[i]>10000)
			cin>>m[i];

	}
	
	int temp=0;
	i=0;
	
	for(i=0;i<10;i++)
	{
		if(temp<m[i])
		{
			temp=m[i];
		}
	}
	int f=temp;
	i=0;
	temp=0;
	for(i=0;i<10;i++)
	{
		if(temp<m[i]&&m[i]<f)
		{
			temp=m[i];
		}
	}
	int s=temp;
	i=0;
	temp=0;
	for(i=0;i<10;i++)
	{
		if(temp<m[i]&&m[i]<s)
		{
			temp=m[i];
		}
	}
	int t=temp;
	
	cout<<f<<endl<<s<<endl<<t<<endl;

    return 0;
}

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

using namespace std;

int main()
{
	int hM[10], I, K, temp;

	for(I = 0; I < 10; I = I + 1)
		scanf("%d", &hM[I]);

	for(I = 0; I < 9; I = I + 1)
		for(K = 0; K < 9 - I; K = K + 1)
			if(hM[K] < hM[K + 1])
			{
				temp = hM[K];
				hM[K] = hM[K + 1];
				hM[K + 1] = temp;
			}

	for(I = 0; I < 3; I = I + 1)
		printf("%d\n", hM[I]);

	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 <vector>
#include <algorithm>
#include <functional>
using namespace std;
int main() {
    vector<int> h;
    int input;
    for (int i=0; i<10; ++i) {
        cin >> input;
        h.push_back(input);
    }

    partial_sort(h.begin(), h.begin()+3, h.end(), greater<int>());

    cout << h[0] << endl;
    cout << h[1] << endl;
    cout << h[2] << endl;
    return 0;
}