zoukankan      html  css  js  c++  java
  • Java编程题(1):n个数里出现次数大于等于n/2的数

    题目描述:输入n个整数,输出出现次数大于等于数组长度一半的数。

    输入描述:每个测试输入包含 n个空格分割的n个整数,n不超过100,其中有一个整数出现次数大于等于n/2。

    输出描述:输出出现次数大于等于n/2的数。

    输入示例:3 9 3 2 5 6 7 3 2 3 3 3

    输出示例:3

    解法之一:

    /*输入n个整数,输出出现次数大于等于数组长度一半的数。*/
    
    package practice_completed;
    import java.util.*;
    
    public class Test {
        public static void main(String[] args) {
            Scanner in = new Scanner(System.in);
            String str = "";
            ArrayList<Integer> a = new ArrayList<Integer>();
            str = in.nextLine();//以字符串形式接收输入的所有数字
            String[] c = str.split(" ");//按' '分割每一个数字,得到新的只含有数字的字符串数组
            for(int i = 0; i < c.length; i++){//将字符串数组中的每个数字字符转换成整型
    //            String temp = String.valueOf(c[i]);
                a.add(Integer.parseInt(c[i]));//将整数赋值给数组列表
            }
            for(int i = 0; i < a.size(); i++){//遍历数组列表,查找符合条件的数字
                int flag = 0;
                for(int j = 0; j < a.size(); j++){
                    if(a.get(i) == a.get(j)){
                        flag++;
                    }
                }
                if(flag >= a.size() / 2){//若flag大于等于数组长度的一半,输出当前的数字
                    System.out.println(a.get(i));
                    break;
                }
            }
            in.close();
        }
    }
  • 相关阅读:
    使用node-inspector调试nodejs程序<nodejs>
    2015 2月记事(1)
    设置npm安装模块目录<nodejs>
    BZOJ 1965 [AHOI2005]洗牌
    BZOJ 1924 [Sdoi2010]所驼门王的宝藏
    【NOIP2003】传染病控制
    BZOJ [Scoi2015]情报传递
    [Noi2002]Savage
    BZOJ 4025: 二分图
    BZOJ 4999 This Problem Is Too Simple!
  • 原文地址:https://www.cnblogs.com/yjry-th/p/9794518.html
Copyright © 2011-2022 走看看