寻找水王的思想是:
假设所有的ID不同且都是数字。因为水王的ID超过一半,遍历所有ID,只要是不同的ID就无视,那么最后剩下来的ID就是水王了。
#include<iostream.h>
#include "stdlib.h"
int main()
{
int length;
int idnum=0;
cout<<"请输入帖子的总数量:"<<endl;
cin>>length;
int * curId=new int [length];
cout<<"请输入帖子的所有ID"<<endl;
int swID;
for(int j=0;j<length;j++)
{
cin>>curId[j];
}
for(int i=0;i<length;i++)
{
if(idnum==0&&curId[i]!=swID)
{
idnum=1;
swID=curId[i];
}
else if(curId[i]!=swID)
idnum--;
else if(curId[i]==swID)
idnum++ ;
}
#include "stdlib.h"
int main()
{
int length;
int idnum=0;
cout<<"请输入帖子的总数量:"<<endl;
cin>>length;
int * curId=new int [length];
cout<<"请输入帖子的所有ID"<<endl;
int swID;
for(int j=0;j<length;j++)
{
cin>>curId[j];
}
for(int i=0;i<length;i++)
{
if(idnum==0&&curId[i]!=swID)
{
idnum=1;
swID=curId[i];
}
else if(curId[i]!=swID)
idnum--;
else if(curId[i]==swID)
idnum++ ;
}
cout<<"水王的ID是:"<<swID<<""<<endl;
return 0;
}
return 0;
}
结果截图:
个人总结:利用水王的ID与大家不同的特点,可以很简单的筛选出来。