D2. Half of Same
题目大意:给你 n n n个数,你可以选择一个数 k k k,然后将这个 n n n个数中的任意个减去任意 k k k的倍数,使得当前数组中有一个数出现次数大于等于 n 2 \frac n 2 2n,求最大的 k k k,如果 k → m a x k\to max k→max,输出 − 1 -1 −1.
解题思路:首先考虑 k k k无穷大的情况,当前情况下表示数组中已经存在一个数出现次数大于等于 2 n \frac 2 n n2.然后我们考虑怎么去找最大的 k k k,比较直接的做法是我们枚举 a i , a j a_i,a_j