CCF/CSP 201312-1出现次数最多的数(满分题解Java版)

2023-10-27

CCF 考试,一定要刷历年真题。
在提交代码的时候,一定不要把中文注释提交上去了,可能会编译报错

  1. 题目描述
    201312-1出现次数最多的数
    在这里插入图片描述
  2. Java题解
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Scanner;

/**
 * 
 * @author wangdong
 *
 */
public class Main {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		int num = scanner.nextInt();
		scanner.nextLine();
		String str = scanner.nextLine();
		scanner.close();
		HashMap<Integer, Integer> map = new HashMap<Integer, Integer>(num);
		String[] numsStrings = str.split(" ");
		for (int i = 0; i < num; i++) {
			Integer keyInteger = Integer.valueOf(numsStrings[i]);
			if (map.containsKey(keyInteger)) {
				Integer tar = map.get(keyInteger);
				map.put((keyInteger), map.get(keyInteger)+1);
			}else {
				map.put(keyInteger, 1);
			}
		}
		List<Integer> keyStrings = new ArrayList<Integer>();
		
		Integer maxNume = 0;
		for (Integer integer : map.keySet()) {
			Integer nuInteger = map.get(integer);
			if (nuInteger > maxNume) {
				maxNume = nuInteger;
			}
		}
		
		
		for (Integer integer : map.keySet()) {
			Integer nuInteger = map.get(integer);
			if (nuInteger == maxNume) {
				keyStrings.add(integer);
			}
		}
		
		int result = keyStrings.get(0);
		if (keyStrings.size()>1) {
			for (int i = 1; i < keyStrings.size(); i++) {
				if (keyStrings.get(i)<result) {
					result = keyStrings.get(i);
				}
			}
		}
		
		System.out.println(result);
	}
}

好啦,祝大家都能学习愉快!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CCF/CSP 201312-1出现次数最多的数(满分题解Java版) 的相关文章

  • MySQL数据库之表中的数据增删改查

    前置操作 在数据库中新建表kk2 1 增 insert into 表名 字段1 字段2 values 数据1 数据2 向表中新增数据 可以选择部分字段插入数据 注意 编写插入语句时 在前面括号内写的字段和后面括号内的数据的位置 数量必须保持
  • 第二章 软件测试策略

    第二章 软件测试策略 根据mooc课程所做的笔记 课程链接 文章目录 第二章 软件测试策略 2 1 软件开发过程及模型 2 2 软件测试过程 单元测试 2 3 软件测试过程 集成测试 2 4 静态白盒测试 2 5 静态黑盒测试 2 1 软件

随机推荐

  • 手把手教你做计算机网络基础大题—地址分配

    一 题目 某单位分配到一个起始地址为14 24 74 0 24的地址块 该单位需要用到三个子网 它们的三个子网地址块的具体要求是 子网N1需要120个地址 子网N2需要60个地址 子网N3需要10个地址 请给出地址的分配方案 二 解答 起始
  • 通信上的RX、TX分别表示什么?

    RX 表示接收数据 Receive rx Data 的简写形式 TX 表示发送数据 Transmit tx Data 的简写形式
  • 使用 Docker-Compose部署JavaWeb项目并运行JavaWeb项目

    一共需要两个容器 Tomcat mysql 然后需要jpress的war包 创建一个新的composeJava目录 将war包放入该目录下 并且以下操作都在 该目录下进行 创建server xml 内容如下
  • 名人名言(持续更新中)

    杰克威尔逊 他说 领导者的工作 就是每天把全世界各地最优秀的人才延揽过来 他们必须热爱自己的员工 拥抱自己的员工 激励自己的员工 作为一个过来人 韦尔奇给公司领导者传授的用人秘诀是他自创的 活力曲线 一个组织中 必有20 的人是最好的 70
  • Android 删除文件功能代码

    Hello everyone 我是鲁班 一个热衷于科研和软开的胖子 亲测有效 废话不说 直接上代码 有问题评论或私信 public static boolean deleteFoder File file if file exists 判断
  • 实用插件_《FF14》将封禁一批第三方插件 其中不乏实用插件

    SE旗下人气网游 最终幻想14 Final Fantasy 14 的最新5 2版本即将上线 正在所有光之战士准备摩拳擦掌大干一场时 官方似乎给这些玩家浇了一盆冷水 先是制作人吉田直树希望玩家们在游戏中停止使用一些色情mod 然后官方表示在此
  • 尚医通——数据字典开发

    这里写目录标题 一 数据字典介绍 二 数据字典开发 1 搭建service cmn模块 1 1 搭建service cmn模块 1 2 修改配置 1 3 启动类 2 数据字典列表 2 1 数据字典列表接口 2 1 1 model模块添加数据
  • C++中的对象初始化

    当对象在创建时获得了一个特定的值 我们说这个对象被初始化 初始化不是赋值 初始化的含义是创建变量赋予其一个初始值 而赋值的含义是把当前值擦除 而以一个新值来替代 对象初始化可以分为默认初始化 直接初始化 拷贝初始化以及值初始化 1 默认初始
  • STM32常用小驱动

    STM32常用小驱动 灯控及蜂鸣器驱动 按键消抖使用例子 蜂鸣器控制列子 数据处理校验计算类 因为疫情 最近在做红外温度检测设备 一些设备组合控制逻辑 灯控及蜂鸣器驱动 支持循环响 响多少次 响多少秒 FILE misc drv c Cre
  • OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000d9200000, 81788928, 0) failed; e

    OpenJDK 64 Bit Server VM warning INFO os commit memory 0x00000000d9200000 81788928 0 failed error Not enough space errno
  • 【点云空间索引】python-pcl:KdTree与八叉树

    1 点云是什么 通过雷达 激光扫描 立体摄像机等三维测量设备获得的点云数据 具有数据量大 分布不均匀等特点 点云数据主要是表征目标表面的海量点集合 并不具备传统实体网格数据的几何拓扑信息 点云处理中最核心的问题就是建立离散点间的拓扑结构 实
  • 华为od机考题目-单词接龙游戏

    用于接龙的单词首字母必须要和前一个单词的为字母相同 当存在多个首字母相同的单词的时候取长度最长的单词 如果长度也相等则去字典序最小的单词 while 1 try k int input n int input nums input
  • vue+springboot使用百度Ai人脸技术接口实现人脸识别登录

    文章目录 前言 一 先注册百度Ai创建实列 二 前端效果图 二 后端 总结 前言 写着玩的 一 先注册百度Ai创建实列 1 进入官网 2 找到产品选择人脸识别 3 进入页面点击立即使用 4 创建实列得到API接口密钥 AppID API K
  • Java 日期增加一天、一周、一月、三月和六月以及判断是否周末

    1 日期增加指定日期 public String isWeekendOrHoliday String date Integer type throws ParseException DateFormat format new SimpleD
  • cmd终端基本命令 , Java安装和卸载的方法

    打开cmd的方式 开始 系统 命令提示符 win r 输入cmd 打开控制台 在任意的文件夹下面shift加上鼠标右键 资源管理器的地址栏前面加上cmd路径 管理员方式运行 选择以管理员的方式运行就可以 终端 dos 命令指示 输入d 可以
  • 本地同城生活服务小程序怎么制作?

    在当今的移动互联网时代 生活服务类小程序越来越受到人们的欢迎 如果你也想开发一款本地同城生活服务小程序 那么请看下面的步骤 1 确定小程序功能和设计 在开发之前 首先需要确定小程序的功能和设计 可以考虑与当地商家合作 提供商家信息 优惠券
  • c++基础入门二

    一 数组的引用 int main int a 10 b 20 int ar 10 1 2 3 4 6 7 int x ar 0 int p 5 ar error int p 10 ar 引用整个数组的大小sizeof ar int p 10
  • Linux相关命令

    Linux中vim相关命令 1 退出vim 2 Linux清屏 3 c99标准使用 1 退出vim 一般退出 VIM 分两种 一种是保存修改并退出 另一种则是直接退出 无论你选择哪一种退出方式 都先请敲一下 Esc 按键回到普通模式 对于第
  • mysql将两张表合并为一张表,主要用作数据分析

    mysql将两张表合并为一张表 有些时候我们需要把两张字段相同的表合的数据信息合并到一张表中 语法 INSERT INTO table1 SELECT FROM table2 上面语句的意思就是将table2的数据导入到我们已经存在的tab
  • CCF/CSP 201312-1出现次数最多的数(满分题解Java版)

    CCF 考试 一定要刷历年真题 在提交代码的时候 一定不要把中文注释提交上去了 可能会编译报错 题目描述 201312 1出现次数最多的数 Java题解 import java util ArrayList import java util