标签:
一 题目要求:
三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?
二 设计思路:
由题意可知,水王帖子数目已超过一半,所以可以遍历一遍帖子,通过遍历,每次从帖子中除去两个不一样的ID,如果下一个ID与上一个ID一样,则可以用一个变量记录相同ID出现的次数,相同次数+1,不同则-1,最后可以得到水王ID。
三 源码
#include<iostream> #include<string> using namespace std; int main() { string id[13]={"亮哥656","亮哥656","死神的镰刀","bingo","影零夕","不愿后悔","亮哥656","亮哥656","死亡咆哮","亮哥656","泪无痕","亮哥656","亮哥656"}; int m= 0,i; string s; for(i = 0; i < 13;i++) { if(m == 0) { s = id[i]; m = 1; } else { if(s == id[i]) { m++; } else { m--; } } } cout<<"水王ID是"; cout<<s<<endl; return 0; }
四 截图
五 总结
标签:
原文地址:http://www.cnblogs.com/houtaoliang/p/4508017.html