>>> #1のデータ
>>> d = {2:[1,3,9], 3:[4,7,8],8:[2,5,9]}
>>> max_value = max([max(value) for value in d.values()])
>>> [d.pop(key) if max_value not in value else None for key, value in d.copy().items()]
[None, [4, 7, 8], None]
>>> d
{2: [1, 3, 9], 8: [2, 5, 9]}
>>>
>>>
>>> #2のデータ
>>> from collections import defaultdict, Counter
>>> from itertools import compress
>>> l=[1,2,9,2,3,9,7,3,3,2]
>>> d = defaultdict(list)
>>> [d[value].append(idx) for idx, value in enumerate(l)]
[None, None, None, None, None, None, None, None, None, None]
>>> c = Counter(l)
>>> selector = [count == c.most_common(1)[0][1] for num, count in c.items()]
>>> dict(compress(d.items() , selector))
{2: [1, 3, 9], 3: [4, 7, 8]}
>>>