找水王

1,题目:三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。
如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?

思路:这个题目最重要的一点在于水王发帖数大于总帖数的一半,所以我的想法如下:将所有人的id存入一个数组中,循环两个变量id(水王的id)和相同id出现的次数c,第一个和第二个进行比较如果相同c加一反之c减一,因为水王的发帖数大于一半,所以他的ID会有相同的进行补充,而其他的没有这么多补充,所以到最后水王一定是正数,由此得到。

 

package 水王;
import java.util.Scanner;
public class shuiwang {
    public static void main(String[] args) {
        int[] a = null;//存储帖子id
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入帖子总个数:");
        int sum = sc.nextInt();
        a = new int[sum];
        System.out.println("输入每个帖子的id:");
        for(int i = 0;i < sum;i++)
        {
            a[i] = sc.nextInt();
        }
        sc.close();
        int id = 0;
        int c=0;


        
        for(int i=0;i<a.length;i++)
        {
            if(c==0) {
                id=a[i];
                c=1;
            }else if(c>0){
                if(a[i]==id) {
                    c=c+1;
                }else if(a[i]!=id){
                    c=c-1;
                }
            }
          
        }
        System.out.println("水王的ID为 : " + id);
        
    }

    
}

 

posted on 2019-06-01 19:14  冰雨xuange  阅读(102)  评论(0编辑  收藏  举报

导航