题目描述
一贫如洗的樵夫阿里巴巴在去砍柴的路上,无意中发现了强盗集团的藏宝地,藏宝地有编号从0~N的箱子。每个箱子上面贴有箱子中藏有金币的数量。从金币数量中选出一个数字集合,并销毁贴有这些数字的每个箱子如果能销毁一半及以上的箱子,则返回这个数字集合的最小大小。
输入描述
一个数字字串,数字之间使用逗号分隔,例如:6.6,6,6,3,3,3,1,15
字串中数字的个数为偶数,并且个数>=1,<=100000;每个数字>=1,<=100000;
输出描述
这个数字集合的最小大小,例如: 2
示例1
输入输出示例仅供调试,后台判题数据一般不包含示例
输入
1,1,1,1,3,3,3,6.6,8
输出
2
python代码实现
import functools
import sys
from collections import Counter, defaultdict
import copy
from itertools