• 找水王


    题目:

      三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。

    如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?

    设计思想

      (1)顺序遍历列表,如果遍历到的帖子的作者的ID和列表的下一个帖子的作者ID相同,则有可能是水王,将ID记录,同时也将ID出现的次数记录,

      (2)当遍历到的ID出现不相同时则将这两个ID都剔除

      (3)如果记录的可能是水王的ID出现次数成为0,则寻找新的可能是水王的ID

    代码实现

     1 package demo3;
     2 import java.util.Scanner;
     3 public class WaterKing {
     4     public static void main(String[] args) {
     5         int[] a = null;
     6         Scanner sc = new Scanner(System.in);
     7         System.out.print("帖子总个数:");
     8         int sum = sc.nextInt();
     9         a = new int[sum];
    10         System.out.print("输入每个帖子的作者(ID):");
    11         for (int i = 0; i < sum; i++) {
    12             a[i] = sc.nextInt();
    13         }
    14         sc.close();
    15         int n = 0;
    16         int nid = -1;
    17         for (int i = 0; i < a.length - 1; i++) {
    18             if (n == 0) {
    19                 if (a[i] == a[i + 1]) {
    20                     n = 2;
    21                     nid = a[i];
    22                 } else {
    23                     if ((i + 1) == a.length - 1) {
    24                         nid = a[a.length - 1];
    25                     }
    26                 }
    27                 i++;
    28             } else {
    29                 if (nid == a[i]) {
    30                     n++;
    31                 } else {
    32                     n--;
    33                 }
    34             }
    35         }
    36         System.out.print("水王的ID : " + nid);
    37     }
    38 }
    View Code

    实现截图

    个人总结

       刚开始写的时候,思路不对,后来和别人讨论的时候才知道自己想思考不全面,没有考虑到许多情况。对水王Id出现情况判断不准。

        通过这次实验,使我加深了对特殊问题一般化,找到其中的规律等的理解

  • 相关阅读:
    存储过程语法二
    存储过程语法一
    存储过程的优点
    .NET中Redis安装部署及使用方法简介
    UEditor富文本web编辑器
    未找到与约束contractname Microsoft.VisualStudio.Utilities.IContentTypeRegistryService
    comet 推送消息到客户端
    文本框 只能输入数字和小数点验证
    asp.net Cache
    Windows10放开Administrator权限
  • 原文地址:https://www.cnblogs.com/dmego/p/6963708.html
Copyright © 2020-2023  润新知