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<iostream>
using namespace std;

int main()
{
    int x = 10;
    int gunung[x];

    for (x=0 ; x<10 ; x++)
    {
        cin >> gunung[x];
    }

    int pertama = 0;
    int kedua = 0;
    int ketiga = 0;

    for (x=0 ; x<10 ; x++)
    if (gunung[x] > pertama)
    {
        ketiga = kedua;
        kedua = pertama;
        pertama = gunung [x];
    }
    else if (gunung [x] > kedua)
    {
        ketiga = kedua;
        kedua = gunung [x];
    }
    else if (gunung [x] > ketiga)
    {
        ketiga = gunung[x];
    }

    cout << pertama << endl;
    cout << kedua << endl;
    cout << ketiga << endl;

    return 0;
}

C++: #include <stdio.h>
#include <math.h>
 
int main() {
    int m[10];
    int ans[3];
    for(int i=0; i<10; i++) scanf("%d", &m[i]);
 
    ans[0] = 0; ans[1] = 0; ans[2] = 0;
    for(int j=0; j<10; j++) {
        if(m[ans[0]] < m[j]) {
            ans[0] = j;
        }
    }
    if(ans[1] == ans[0]) {
        if(ans[1] == 0) ans[1] = 1;
        else ans[1] = ans[0]-1;
    }
    for(int j=0; j<10; j++) {
        if(m[ans[1]] < m[j] && ans[0] != j) {
            ans[1] = j;
        }
    }
    if(ans[2] == ans[0]) {
        if(ans[2] == 0) ans[2] = 2;
        else ans[2] = ans[0]-2;
    }
    for(int j=0; j<10; j++) {
        if(m[ans[2]] < m[j] && ans[0] != j && ans[1] != j) {
            ans[2] = j;
        }
    }
    printf("%d\n%d\n%d\n", m[ans[0]], m[ans[1]], m[ans[2]]);
    return 0;
}

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

int main()
{
    int n;
    cin>>n;
    int a[n];

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

    for(int i=0; i<n; i++)
        for(int j=i; j<n; j++)
        {
            if(a[i]<a[j])
            {
                int temp = a[i];
                a[i] = a[j];
                a[j] = temp;
            }

        }

    for(int i=0; i<3; i++)
        cout << a[i] << " ";

    return 0;
}

C++: #include <iostream>

using namespace std;

void buble_sort(int high[]){
    int i,j,v,k;

    for(i = 0;i < 9;i++){
        v = i;
        for(j = i;j <= 9;j++){
            if(high[v] < high[j]){
                v = j;
            }
        }
        int box = high[i];
        high[i] = high[v];
        high[v] = box;

    }
}

int main() {
    int i,high[10];

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

    buble_sort(high);

    cout << endl;

    for(i = 0;i <= 2;i++){
        cout << high[i];
        if(i != 2){
            cout << 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 <algorithm>
#include <vector>
#include <string>
#include <stack>
#include <queue>
#include <cctype>
#include <cstring>
#include <set>
#include <map>
#define rep(i, m, n) for (int i = m; i < n; i++)
#define repr(i, n) for (int i = n; i >= 0; i--)
#define ll long long
#define ull unsigned long long
#define push(a) push_back(a)
#define pop(a) pop_back(a)
#define debug(x) cout << #x << ": " << x << endl
#define SORT(v, n) sort(v, v + n);
#define VSORT(v) sort(v.begin(), v.end());
#define INF 999999999
using namespace std;
typedef pair<int, int> P;
typedef pair<ll, ll> LP;
typedef pair<int, P> PP;
typedef pair<ll, LP> LPP;

int dy[] = {0, 0, 1, -1, 0};
int dx[] = {1, -1, 0, 0, 0};

ll n, a[10]={}, b;

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

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

int a[15];
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);

    for(int i=0;i<10;i++)
    {
        cin>>a[i];
    }
    sort(a,a+10);
    for(int i=9;i>=7;i--)
    {
        cout<<a[i]<<"\n";
    }

    return 0;
}

C++: #include <iostream>
#include<algorithm>
using namespace std;
int main() {
	int a,one=0,two=0,three=0;
	for(int i=0;i<10;i++){
		cin>>a;
		if(a>three)three=a;
		if(three>two)swap(three,two);
		if(two>one)swap(one,two);
	}
	cout<<one<<endl<<two<<endl<<three;
	return 0;
}

C++: #include "bits/stdc++.h"
#include<unordered_map>
#include<unordered_set>
#pragma warning(disable:4996)
using namespace std;
using ld = long double;
template<class T>
using Table = vector<vector<T>>;


int main() {
	vector<int>nums(10);
	for (int i = 0; i < N; ++i) {
		cin >> nums[i];
	}
	sort(nums.begin(), nums.end(), greater<int>());
	for (int i = 0; i < 3; ++i) {
		cout << nums[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 = 1; i < 4; i++) printf("%d\n", a[N-i]);
}

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

using namespace std;

int main() {
  int h[10];
  for (int i=0; i<10; ++i) {
    cin >> h[i];
  }
  sort(begin(h), end(h));
  cout << h[9] << "\n";
  cout << h[8] << "\n";
  cout << h[7] << "\n";
}

C++: #include <stdio.h>

int main(){

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

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

using namespace std;

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

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

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

C++: #include<stdio.h>

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

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

int main(){
  using namespace std;
  set<int, greater<int> > mts;
  for(int i = 0; i < 10; i++){
    int tmp = 0;
    scanf("%d", &tmp);
    mts.insert(tmp);
  }
  int count = 0;
  for(int const mt : mts){
    printf("%d\n", mt);
    if(++count >= 3) break;
  }
  return 0;
}

C++: #include<iostream>

int main(){
	int a[10],i,n,p;

	for(i=0;i<10;i++){
		std::cin >> a[i];
	}for(i=0;i<9;i++){
		for(p=i+1;p<10;p++){
			if(a[i]<a[p]){
				n=a[i];
				a[i]=a[p];
				a[p]=n;
				}
			}
		}
	for(i=0;i<3;i++){
		std::cout<<a[i]<<std::endl;
		}
	return 0;
	}

C++: #include <stdio.h>
int main(void){
  int i,j,data[10],tmp;
  for(i=0;i<10;i++){
    scanf("%d",&data[i]);
  }
  for(i=0;i<10;i++){
    for(j=9;j>i;j--){
      if(data[j]>data[j-1]){
    tmp=data[j];
    data[j]=data[j-1];
    data[j-1]=tmp;
      }
    }
  }
  for(i=0;i<3;i++){
    printf("%d\n",data[i]);
  }
  return(0);
}

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

int main()
{

    int a[10];

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

    for(int i=0; i<10; i++)
        for(int j=i; j<10; j++)
        {
            if(a[i]<a[j])
            {
                int temp = a[i];
                a[i] = a[j];
                a[j] = temp;
            }

        }

    for(int i=0; i<3; i++)
        cout << a[i] << " ";

    return 0;
}