1var minSetSize = function (arr) {2let half = arr.length / 2;3if (half === 1) return 1;4const counts = {};5for (let n of arr) {6if (counts[n] === undefined) counts[n] = 1;7else if (++counts[n] >= half) return 1;8}9const aggr = Object.values(counts).sort((a, b) => a - b);10let i = aggr.length;11while (half > 0) half -= aggr[--i];12return aggr.length - i;13};