Go: package main

import (
        "fmt"
        "bufio"
        "os"
        "strconv"
)

func main() {
        fp := os.Stdin
        scanner := bufio.NewScanner(fp)
        var lst [3]int

        for scanner.Scan() {
                num, _ := strconv.Atoi(scanner.Text())
                if lst[0] < num {
                        lst[2] = lst[1]
                        lst[1] = lst[0]
                        lst[0] = num
                } else if lst[1] < num {
                        lst[2] = lst[1]
                        lst[1] = num
                } else if lst[2] < num {
                        lst[2] = num
                }
        }

        for _, i := range lst {
                fmt.Printf("%d\n", i)
        }
}

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 <iostream>
#include <vector>
#include <algorithm>
#include <string>
#include <sstream>
#include <iterator>
#include <cmath>
#include <stack>
#include <functional>
using namespace std;

 
int main()
{
  vector<int> height;

  for(int i = 0; i < 10; i++) {
    int temp;
    cin >> temp;
    height.push_back(temp);
  }
  sort(height.begin(), height.end(), greater<int>());

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

  return 0;
}

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

int main(void)
{
  int a[10]={};
  int i=0;
  int j=0;

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

  sort(a,a+10);

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

}

C++: 
#include<iostream>

using namespace std;

int main(){
  int outHigh[3],inHigh[10];
  int where;
  outHigh[0]=0;
  outHigh[1]=0;
  outHigh[2]=0;

  for(int i = 0; i < 10; i++){
    cin>>inHigh[i];
  }
  
  for(int j = 0; j < 3; j++){
    for(int i = 0; i < 10; i++){
      if(outHigh[j] < inHigh[i]){
	outHigh[j] = inHigh[i];
	where = i;
      }	
    }
    inHigh[where] = 0;
  }
  cout << endl;
  for(int i = 0; i < 3; i++){
    cout << outHigh[i]<<endl;
  }
  
}

C++: #include<iostream>
using namespace std;
int main(){
int a=0,b=0,c=0,i,val,tmp_a,tmp_b;
for(i=0;i<10;i++){
cin >> val;
if(val>a){
tmp_a=a;
a=val;
tmp_b = b;
b=tmp_a;
c=tmp_b;
}else if(val>b){
tmp_a = b;
b = val;
c = tmp_a;
}else if(val>c){
c=val;
}
}
cout << a << endl;
cout << b << endl;
cout << c << endl;
return 0;
}

C++: #include<stdio.h>
int main(){
	int a,i,j;
	int a[10];
	for(i=0;i<10;i++){
		scanf("%d",&a[i]);
	}
	for(i=0;i<9;i++){
			for(j=0;j<9-i;j++){
				if(a[j]<a[j+1]){
					int temp =a[j];
					a[j]=a[j+1];
					a[j+1]=temp;
				}
			}
	}
					for(i=0;i<3;i++){
						printf("%d\n",a[i]);
					}
						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+3);

    for(int i = 10 - 1; 7 <= i; i--) 
        cout << m[i] << endl;
}

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

using namespace std;

int main(){

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

  return 0;
}

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

void top3()
{
    int temp;
    int bil[10];
    int i = 0;

    while(i<10)
    {
        cin >> bil[i];
        if(bil[i] >=0 && bil[i] <= 10000)
            i++;
        else
            exit(1);
    }
    for(int i = 0; i < 10-1; i++)
    {
        for(int j = i+1; j < 10; j++ )
        {
            if(bil[j] > bil[i])
            {
                temp = bil[i];
                bil[i] = bil[j];
                bil[j] = temp;
            }
        }
    }
    for(int i = 0; i < 3; i++)
    {
        cout << bil[i]<< endl;
    }
}


int main () {

    top3();

return 0;

}

C++: #include<stdio.h>

int main(void){
  int a,b,c,d,i;  
  a=b=c=d=0;
  for(i=0;i<10;i++){
    scanf("%d",&a);
      if(a>d){
      c=d;b=c;d=a;}
    else if(a>c){
      b=c;
      c=a;   }
    else if(a>b)
      { b=a;}
   

}
    
printf("%d\n%d\n%d\n",d,c,b); 
 return 0;
}

C++: #include <string>
#include <queue>
#include <iostream>

using namespace std;

int main()
{
	priority_queue<int> height;
	int i = 0, tmp;

	while ( i < 10 )
	{
		cin >> tmp;
		height.push( tmp );
		i = i + 1 ;
	}
	
	for ( i = 0 ; i < 3 ; i = i + 1 )
	{
		cout << height.top() << endl;
		height.pop();
	}

	return 0;
}

C++: #include <iostream>
#include <string>
using namespace std;
 
int main(){
int rank[3],a[10],i = 0,ii = 0;
rank[0] = 0;
rank[1] = 0;
rank[2] = 0;
while(i <= 9){
	cin >> a[i];
	while(ii <= 2){
		if(rank[ii] < a[i]){
			if(ii != 2){
			rank[ii+1] = rank[ii];
			rank[ii] = a[i];
			break;	
			}else{
			rank[ii] = a[i];
			break;	
			}
		}
		ii++;
	}
i++;
ii = 0;

}
cout<<rank[0]<<endl<<rank[1]<<endl<<rank[2]<<endl;




}

C++: include <stdio.h>
 	int main() {
	cin>>a>>b;
 	int a,b;
 	1=1<a+b<10
	2=10<a+b<100
	3=100<a+b<1000
	cout<<a<<b;
}

C++: #include <stdio.h>

int main(void)
{
	int m[10];
	int max1 = 0, max2 = 0, max3 = 0;
	int i;
	
	for (i = 0; i < 10; i++){
		scanf("%d", &m[i]);
	}
	
	for (i = 0; i < 10; i++){
		if (max1 <= m[i]){
			/*max1 = m[i];
			max2 = max1;*/
			max3 = max2;
			max2 = max1;
			max1 = m[i];
		}
		else if (max2 <= m[10]){
			max3 = max2;
			max2 = m[i];
		}
		else if (max3 <= m[10]){
			max3 = m[i];
		}
	}
	
	printf("%d\n%d\n%d\n", max1, max2, max3);
	
	return (0);
}

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

int main(){
	int x[10],y;
	for(int i = 0 ; i < 10 ; i++){
		cin >> x[i];
	}
	for(int i = 0 ; i < 10 ; i++){
		for(int l = i + 1 ; l < 10 ; l++){
			if(x[i]<x[l]){
				y=x[i];
				x[i]=x[l];
				x[l]=y;
			}
		}
	}
	for(int i = 0 ; i <= 2 ; i++){
		cout<<x[i]<<endl;
	}
	return 0;
}