设计思路:
因为水王的ID出现的次数大于一半,那么在所有ID中,以第一次ID为计数,对ID进行遍历,出现一次便加1,没有出现便减1,遍历结束后,如果小于零便换一个ID,依次对ID进行遍历,最终看见大于零的,便是水王的ID咯。。。
代码:
1 #include2 using namespace std; 3 #define N 10 4 5 void main() 6 { 7 int a[N]={ 2,2,2,4,5,2,2,2,6,5};//每个帖子的ID 8 int n = 0; 9 int m = a[0]; //ID10 for(int i = 0;i < N;i++)11 {12 if (m == a[i])13 {14 n++;15 }16 else17 {18 n--;19 }20 if (n <= 0)21 {22 m = a[i];23 n = 1;24 }25 }26 cout << "水王是:" << m << endl;27 }