Problem:
Mode Value

Your task is to write a program which reads a sequence of integers and prints mode values of the sequence.
The mode value is the element which occurs most frequently.

Input

A sequence of integers ai (1 ≤ ai ≤ 100). The number of integers is less than or equals to 100.

Output

Print the mode values. If there are several mode values, print them in ascending order.

Sample Input

5
6
3
5
8
7
5
3
9
7
3
4

Output for the Sample Input

3
5

For example, 3 and 5 respectively occur three times, 7 occurs two times, and others occur only one. So, the mode values are 3 and 5.

Solution in JAVA (judge verdict: Wrong Answer)

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.HashSet;

public class Main{

	public static void main(String[] args) throws IOException{
		// TODO Auto-generated method stub
    	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    	String buf;
    	int num;
    	HashMap<Integer, Integer> numH = new HashMap<Integer, Integer>();
    	try{
    		while((buf = br.readLine())!=null)
    		{
    			if(buf.isEmpty()||buf==null)
    				break;
    			num = Integer.parseInt(buf);
    			if(numH.containsKey(num))
    				numH.put(num, numH.get(num)+1);
    			else numH.put(num,1);
    		}
    	HashSet<Integer> maxNums = new HashSet<Integer>();
    	int maxValue =0;
    	for(int key:numH.keySet()){
    		if(numH.get(key)< maxValue)continue;
    		if(numH.get(key)>= maxValue){
    			maxValue=numH.get(key);
    			maxNums.add(key);
    		}
    	}
    	for(int i:maxNums)
    		System.out.println(i);
    			
    	}catch (Exception e){
    		e.printStackTrace();
    	}
	}

}