SRM 416 DIV2 Level.1

長いな・・・。
もっとスマートに書けるはず。

public class MostCommonLetters
{
    public String listMostCommon(String[] text)
    {
        Dictionary<char, int> dic = new Dictionary<char, int>();

        foreach (String s in text)
        {
            foreach (Char c in s)
            {
                if (c != ' ')
                {
                    if (dic.ContainsKey(c))
                    {
                        dic[c]++;
                    }
                    else
                    {
                        dic[c] = 0;
                    }
                }
            }
        }
        int max = 0;
        foreach (int i in dic.Values)
        {
            if (i > max)
            {
                max = i;
            }
        }
        String ret = "";
        for (char i = 'a'; i <= 'z'; i++)
        {
            if (dic.ContainsKey(i))
            {
                if (dic[i] == max)
                {
                    ret += i;
                }
            }
        }

        return ret;
    }
}