Problem:
List of Top 3 Hills

There is a data which provides heights (in meter) of mountains. The data is only for ten mountains.

Write a program which prints heights of the top three mountains in descending order.

Input

Height of mountain 1
Height of mountain 2
Height of mountain 3
.
.
Height of mountain 10

Constraints

0 ≤ height of mountain (integer) ≤ 10,000

Output

Height of the 1st mountain
Height of the 2nd mountain
Height of the 3rd mountain

Sample Input 1

1819
2003
876
2840
1723
1673
3776
2848
1592
922

Output for the Sample Input 1

3776
2848
2840

Sample Input 2

100
200
300
400
500
600
700
800
900
900

Output for the Sample Input 2

900
900
800

Solution in JAVA (judge verdict: Wrong Answer)

import java.io.*;
class Main{
    public static void main (String[] args)
   	throws IOException{
	int[] data=new int[10];
	int max1=0,max2=0,max3=0;
       BufferedReader br=
	   new BufferedReader(new InputStreamReader(System.in));
	for(int i=0;i<10;i++){
	    String buf=br.readLine();
	    data[i]=Integer.parseInt(buf);
	}
	boolean check1=true,check2=true;
	for(int i=0;i<10;i++){
	    if(i==0)max1=data[i];
	    if(max1<data[i]){
		max1=data[i];
	    }
	}
	boolean check=true;
	for(int i=0;i<10;i++){
	    if(max1==data[i])continue;
	    if(check){
		check=false;
		max2=data[i];
	    }else if(max2<data[i]){
		max2=data[i];
	    }
	}
	check=true;
	for(int i=0;i<10;i++){
	    if(max2<=data[i])continue;
	    if(check){
		check=false;
		max3=data[i];
	    }else if(max3<data[i]){
		max3=data[i];
	    }
	}

	System.out.println(max1);
	System.out.println(max2);
	System.out.println(max3);
	
    }
}