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 JavaScript (judge verdict: Wrong Answer)

var data = require('fs').readFileSync('/dev/stdin', 'utf8');
var input = data.trim().split('\n');

// var input = [
// 	1819,
// 	2003,
// 	876,
// 	2840,
// 	1723,
// 	1673,
// 	3776,
// 	2848,
// 	1592,
// 	922
// ];

function quickSort(arr) {
	if (arr.length <= 1) {
		return arr;
	}

	var pivot = arr.pop();
	var left = [];
	var right = [];

	while (arr.length) {
		var elem = arr.pop();
		if (elem > pivot) {
			left.push(elem);
		} else {
			right.push(elem);
		}
	}

	var sorted = [].concat(quickSort(left), pivot, quickSort(right));
	return sorted.splice(0, 3);
}

var output = quickSort(input);

for (var i = 0; i < output.length; i ++) {
	console.log(output[i]);
}