python求一个任意字符串s中出现次数最多的一个字符

函数main()接收一个任意字符串s,要求返回其中出现次数最多的一个字符,如果有多个出现次数并列最多的字符,返回Unicode编码最大的字符。例如
main('aaaabbcccc')返回'c'。
要求:不能使用循环结构,不能导入任何模块
不能出现循环把我难住了

>>> def main(s):
    eles = list(set(s))
    eles.sort()
    eles.reverse()
    idx = list(map(s.count, eles))
    return eles[idx.index(max(idx))]

>>> main('aaaabbcccc')
'c'
>>> main('ffffgggweefccchhcc')
'f'

使用递归


from collections import Counter
a = "aaaabbccccc"
dic = Counter(a)
print('第一种:',list(dic.keys())[list(dic.values()).index(max(dic.values()))])
print('第二种:',max(dic, key=lambda x: dic[x]))
print('第三种:',max(dic, key=dic.get))