编程题:相同数字的积木游戏(Java)

news/2024/4/27 17:06:32
题目描述

小华和小薇一起通过玩积木游戏学习数学。 

他们有很多积木,每个积木块上都有一个数字,积木块上的数字可能相同。

小华随机拿一些积木挨着排成一排,请小薇找到这排积木中数字相同目所处位置最远的2块积木块,计算他们的距离。 

小薇请你帮忙替她解决这个问题。

输入

第一行输入为N,表示小华排成一排的积大总数。 

接下来 N 行每行一个数字,表示小花排成一排的积大上数字。

输出

相同数字的积木的位置最远距离; 

如果所有积木数字都不相同,请返回 -1

样例输入 
5
1
2
3
1
4
样例输出 
3
思路:

        这属于一个简单题目了,我们只要边输入边判断改变即可。

        首先,每种数字第一次出现的时机是需要记录下来的,因为我们是求间隔最长的两个相同元素的间隔长度。

        其次就是遇见重复元素进行判断,更改最大值状态即可。

代码:
package Date3Point21;import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;/*** 小华和小薇一起通过玩积木游戏学习数学。* 他们有很多积木,每个积木块上都有一个数字,积木块上的数字可能相同。* 小华随机拿一些积木挨着排成一排,请小薇找到这排积木中数字相同目所处位置最远的2块积木块,计算他们的距离。* 小薇请你帮忙替她解决这个问题。*/
public class MainB {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);int n = scanner.nextInt();Map<Integer,Integer>  map=new HashMap<>();int count=1;int maxLen=0;while (count<=n){int num= scanner.nextInt();if(!map.containsKey(num)){map.put(num,count);}else{Integer integer = map.get(num);maxLen=maxLen<count-integer.intValue()?count-integer.intValue():maxLen;}count++;}if(maxLen==0){System.out.println(-1);}else{System.out.println(maxLen);}}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.cpky.cn/p/10925.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

【C++练级之路】【Lv.15】AVL树(双子旋转,领略绝对平衡之美)

快乐的流畅&#xff1a;个人主页 个人专栏&#xff1a;《C语言》《数据结构世界》《进击的C》 远方有一堆篝火&#xff0c;在为久候之人燃烧&#xff01; 文章目录 引言一、AVL树的概念二、AVL树的模拟实现2.1 结点2.2 成员变量2.3 插入2.4 旋转2.4.1 左单旋2.4.2 右单旋2.4.3 …

CSDN个人简介优化 html font属性

CSDN个人简介优化 html font属性 个人简介个人简介优化字体21种样式选择字体大小设置4号字体 字体颜色设计渐变色&#xff08;可惜不能显示&#xff09; 字体加粗设置 <b>标签 个人简介 &#x1f308;你好呀&#xff01;我是 是Yu欸 &#x1f30c; 2024每日百字篆刻时光…

Carla 自动驾驶挑战赛 搭建环境

1. 系统设置 1.1 下载CARLA排行榜包 下载打包的CARLA 排行榜版本。 将包解压到一个文件夹中&#xff0c;例如 CARLA。 在以下命令中&#xff0c;更改${CARLA_ROOT}变量以对应于您的 CARLA 根文件夹。 为了使用 CARLA Python API&#xff0c;您需要在您喜欢的环境中安装一些…

电脑坏了去维修,第一家报价800,第三家说报废!

这篇文章主要讲的是修理坏掉的电脑。 第一家报价300&#xff0c;第二家报价800&#xff0c;第三家说要报废&#xff01; 相信很多朋友对于修电脑坏了要多少钱有很多困惑&#xff0c;修电脑坏了要多少钱&#xff0c;到底去正规售后服务还是去非品牌店维修一台坏掉的电脑。 今天高…

SpringMVC 简介及入门级的快速搭建详细步骤

MVC 回顾 MVC&#xff0c;即Model-View-Controller&#xff08;模型-视图-控制器&#xff09;设计模式&#xff0c;是一种广泛应用于软件工程中&#xff0c;特别是Web应用开发中的架构模式。它将应用程序分为三个核心组件&#xff1a; Model&#xff08;模型&#xff09;&#…

Tickmill外汇平台怎么样?FX110外汇交易商测评

Tickmill 是一家成立于 2014 年的外汇和差价合约经纪商&#xff0c;在交易者中获得了较大的关注。剩下的问题是&#xff1a;Tickmill外汇平台怎么样&#xff1f;安全吗&#xff1f;Tickmill安全还是骗局&#xff1f; 监管是判定一家外汇平台正规性的一个基石。通过FX110查询可知…