一、题目
三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。 如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?
二、设计思路
这道题的主要突破口还是老师给的思路“两两相消”
即在str数组中,存在着0-9数字,其中一个数字的个数超过了50%,找到这个数字。
三、代码
#include<iostream.h> int main() { int j=0,k=0; int a[10]={5,5,3,5,3,3,3,5,3,3}; k=a[0]; for(int i=0;i<10;i++) { if(k=a[i]) { j-=1; if(j<=0) { k=a[i+1]; j=1; i++; } else { k=a[i]; j+=1; } } } cout<<"水王是:"<<k<<endl; return 0; }
四、实验截图:
四、实验心得
通过这次实验,一件事情有很多解决办法,但要结合题目要求,别人能认可、肯定的才是好的,尤其是老师的要求,增加了一定的难度,但也锻炼了我们,扩展了我们的思维,不是能做出来就好,代码短还能完美实现功能才是目标,也是老师说的优化