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: Wrong Answer)

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

namespace ConsoleApplication27
{
    class Program
    {
        static void Main()
        {
            List<int> s = new List<int>();
            int x = 0;
            int y = 0;
            List<int> z = new List<int>();
            while (true)
            {
                string a = Console.ReadLine();
                if (a == null) break;//????????????
                int b = int.Parse(a);
                s.Add(b);
            }
            s.Sort();
            for (int c = 1; c < s[s.Count - 1] + 1; c++)
            {
                int b;
                for (b = 0; b < s.Count; b++)
                {
                    if (s[b] == c) x++;//?????§??°??????????????????
                }
                if (x > y)
                {
                    for (int f = 0; f < z.Count; f++)
                    {
                        z[f] = -1;//??????????????§???????????°??¨????????????????????????????°?????¶????????????????
                    }
                    z.Add(c); y = x;x = 0;
                }
                else if (x == y) { z.Add(c);x = 0; }//????????????????°?????¶????
            }
            for (int t = 0; t < z.Count; t++)
            {if(z[t]!=-1) Console.WriteLine(z[t]); }
        }
    }
}