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 <cstdlib>
#include <iostream>
#include <algorithm>

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

    int a[10];
    int i=0;
    while (std::cin >> a[i]) {
        i++;
    }
    std::sort(a, a+10);
    for (i=9; i>6; i--){
        std::cout << a[i] << std::endl;
    }
    return 0;
}

C++: #include<iostream>
using namespace std;
int main() {
	int a[10],min1=-1,min2=-1,min3=-1, i,j,k,l;
	for (i = 1; i <= 10; i++) {
		cin >> a[i];
	}
	for (j = 1; j <= 10; j++) {
		if (a[j] > min1) {
			min1 = a[j];
		}
	}
	for (k = 1; k <= 10; k++) {
		if (a[k] > min2 && a[k]!=min1) {
			min2 = a[k];
		}
	}
	for (l = 1; l <= 10; l++) {
		if (a[l] > min3&&a[l]!=min2&&a[l]!=min1) {
			min3 = a[l];
		}
	}
	cout << min1 << endl << min2 << endl << min3  << endl;
	return 0;
}

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

int main(){

	int i=0,n;
	int a[10000];


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

    return 0;
}

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

int main() {
    return ([]() {
        std::function<void()> input;
        std::vector <int> list;
        (input = [&input, &list]() {
            int data;
            if ( std::cin >> data ) {
                list.push_back( data );
                input();
            } else {
                sort( list.rbegin(), list.rend() );
                for_each(
                    list.begin(),
                    list.begin() + 3,
                    [](int x){ std::cout << x << std::endl; }
                );
            }
        })();
        return 0;
    })();
}

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

  return 0;
}

C++: #include <iostream>
//#include <iomanip>
//#include <vector>
#include <string>
#include <algorithm>
#include <functional>

using namespace std;

int main(){

	int h[10];

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

	sort(h,h+10);

	for (int i = 9; i > 6; i--){
		cout << h[i] << endl;
	}

	return 0;
}

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

int main(){
    int i, t, j;
    int max[3] = {0};
    int mountain[10] = {0};
    
    for(i = 1; i <= 3; i++){
        for(t = 1; t <= 10; t++){
        cin >> mountain[t];
        if(max[i] < mountain[t]) {
            max[i] = mountain[t];
            }
        }
        
        for(j = 1; j <= 10; j++){
            if(max[i] == mountain[j]) mountain[j] = {0};
        }
        
        cout << max[i] << endl;
    }
    
    
    
    
    

    
    return 0;
    
}

C++: #include <bits/stdc++.h>
// #include "bits/stdc++.h"

#define pout(n)  printf ("%d\n", n)

#define rep(i,a,n) for (int i = a;i < n;i++)
#define per(i,n,a) for (int i = n-1;i >= a;i--)

const int d4x[4] = {1, 0, -1, 0};
const int d4y[4] = {0, 1, 0, -1};
const int d8x[8] = { 1,1,0,-1,-1,-1,0,1 };
const int d8y[8] = { 0,1,1,1,0,-1,-1,-1 };
 
typedef long long ll;
using namespace std;
 
int main() {
  int mo[10];
  rep(i,0,10){
    cin >> mo[i];
  }
  sort(mo,mo+10);
  per(i,10,7){
    pout(mo[i]);
  }
  return 0;
}

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

			}
			else if (b > max3) {
				max3 = b;
			}
		}
	}
	printf("%d\n", max);
	printf("%d\n", max2);
	printf("%d\n", max3);
	return 0;
}

C++: #include<stdio.h>


int main()
{
    int a[1000], i , j , k,n, rem;
    //scanf("%d", &n);
    for(i=0; i<10; i++)
    {
        scanf("%d", &a[i]);
    }
 for(i=0; i<10; i++)
    {for(j=0; j<10; j++)
      {

       if(a[j]<a[j+1])
        {
        rem=a[j+1];
        a[j+1]=a[j];
        a[j]=rem;
        }
      }
    }


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

C++: #include<stdio.h>

int main()

{
    int i,num,n,count;
    scanf("%d",&n);

      for(i=1;i<=n;i++)

    {
        int num;
        scanf("%d",&num);
        count=0;
        while(num!=0){

            if(num%2==1)
                count++;
                num/=2;
        }
        if(count%2==1)
            printf("Case %d: odd\n",i);
        else
            printf("Case %d: even\n",i);


    }
    return 0;
}

C++: #include<iostream>
#include<algorithm>
using namespace std;
int main()
{
    int a[10],i;
    for(i=0;i<10;i++)cin>>a[i];
    sort(a,a+10);
    for(i=9;i>6;i--)cout<<a[i]<<endl;
    return 0;
}

C++: #include <iostream>
#include <algorithm>
#include <deque>
#include <functional>
using namespace std;
int main(){
	int num;
	deque<int> h;
	for(int i = 0; i < 10; i++){
		cin >> num;
		h.push_back(num);
	}
	sort(h.begin(), h.end(), greater<int>());
	deque<int>::iterator it = h.begin();
	while(it != h.begin()+3){
		cout << *it << endl;
		++it;
	}
	return(0);
}

C++: #include<stdio.h>
#include<conio.h>
#include<iostream>
#include<stdlib.h>

#include<vector>
#include<algorithm>

using namespace std;
int main()
{
	vector<int> vec;
	int temp;
	for (int i = 0; i < 10; i++)
	{
		cin >> temp;
		vec.push_back(temp);
	}
	make_heap(vec.begin(), vec.end());
	for (int i = 0; i < 3; i ++ )
	{
		cout << vec.front()<<endl;
		pop_heap(vec.begin(), vec.end());
		vec.pop_back();
	}
}

C++: #define _USE_MATH_DEFINES
#include <iostream>
#include <vector>
#include <math.h>
#include <string>
#include <string.h>
#include <stack>
#include <algorithm>
#include <stdio.h>
#include <functional>
using namespace std;

//??°?????????????????°

void function()
{
    //??¢??°
}
 
int main(){
    int max1 = 0;
    int max2 = 0;
    int max3 = 0;
    for (int i = 0; i < 9; i++){
    	int a;
		cin >> a;
		if(a > max1){
		max3 = max2;
		max2 = max1;
		max1 = a;
		}else if(a > max2){
			max3 = max2;
			max2 = a;
		}else if(a > max3){
			max3 = a;
		}
    }
    cout << max1 << endl << max2 << endl << max3 << endl;
    return 0;
}

C++: #include<iostream>
  using namespace std;
   int main(){
      int a[10];
      int temp;
      for(int m=0; m<10; m++)
      {
          cin >> a[m];
      }
    temp=a[0];
      for(int i=0; i<10; i++)
      {
          for(int j=0; j<10;j++)
          {
          if(a[i] > a[j])
          {
            temp=a[i];
            a[i]=a[j];
            a[j]=temp;
          }
        }
      }
      for(int k=0; k<3; k++)
      {
          cout << a[k]<< endl;
      }
   }