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 C# (judge verdict: Accepted)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace OJcsharp
{
    class Program
    {
        static void Main(string[] args)
        {

            //31.29.31.30.31.30.31.31.30.31.30.31
            int[] sei = new int[101];
            int saidai = 0;
            for (int n = 0; n < 101; n++)
                sei[n] = 0;
            string str=Console.ReadLine();
            do
            {
                if (saidai < int.Parse(str))
                    saidai = int.Parse(str);
                sei[int.Parse(str)]++;
                str = Console.ReadLine();
            } while (string.IsNullOrEmpty(str) == false);
            int saihin = 0;
            for (int n = 1; n < saidai + 1; n++)
            {
                if (saihin < sei[n])
                    saihin = sei[n];
            }
            for (int n = 1; n < saidai + 1; n++)
            {
                if (saihin == sei[n])
                    Console.WriteLine(n);
            }
        }
    }
}