题目:
三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?
设计思想:
数组中的数据没两个进行匹配,若不同,则将这两个数的值均赋为NULL。最后一定会剩下占所有帖子超过50%的水王。
程序概要设计:
我是自己定义的一维数组,并付给了初值。然后对这个数组进行找水王的操作,就像老师上课所说的,将数组中的数据每两个进行匹配,若不同,则将这两个数的值均赋为NULL。最后一定会剩下占所有帖子超过50%的水王。
源代码:
//2016.5.20 王硕 20133099 找水王01
#include <iostream>
using namespace std;
void main()
{
int i;
int king=1;
cout<<"设置水王的ID:"<<king<<endl;
int news[12]={1,2,1,1,3,1,6,1,5,1,7,1};
cout<<"帖子列表:"<<endl;
for(i=0;i<12;i++)
{
cout<<news[i]<<" ";
}
cout<<endl;
for(i=0;i<12;i=i+2)
{
if(news[i]!=news[i+1])
{
news[i]=0;
news[i+1]=0;
}
}
for(i=0;i<12;i++)
{
if(news[i]!=0)
{
cout<<"搜索出的水王ID为:";
cout<<news[i]<<endl;
break;
}
}
}
程序运行结果截图: