小明非常喜欢吃美食,同时他非常讨厌吃到重复的东西.小云为小明准备了n道美食,其中第i道美食的特征值为ai,因为小明讨厌重复的东西,所以小云想通过混合美食来改变其特征值使得所有美食特征值互不相同。具体的小云每次可以选择两个特征值分别为x,y的美食并将x加入y中变成特征值为x和x+y的美食,现在小云想知道他最少需要混合多少次使得所有美食特征值互不相同。
我们可以让重复的数和最大的数相加,原本最大的数不变,重复的数加上了最大的数。这样最大的数变成了新的,并且不会有重复,下一次我们使用这个新的数和另外重复的数相加,这样循环就可以使数组删除所有重复的数。并且每个重复的数只需要操作一次。那么答案就是统计有多少个重复的数。
C++
本题属于以下题库,请选择所需题库进行购买