1. 程式人生 > >好未來:n個數裡出現次數大於等於n/2的數

好未來:n個數裡出現次數大於等於n/2的數

題目連結: n個數裡出現次數大於等於n/2的數

直接排個序,找中間的數就好了,排完序考慮最極端的情況,如果出現次數大於等於n/2的數如果在開頭或者結尾,它也會出現在最中間,更別說其它情況了,然後用容斥原理也可以做。

#include<iostream>
#include<algorithm>
using namespace std;
const int maxn = 1e6+5;
int num[maxn];
int main()
{
	int n,i=0;
	while(cin>>n)
	{	
		num[i]=n;
		i++;
	}
	sort(num,num+i+1);
	cout<<num[i/2]<<endl;
	return 0;
}