Java程序之让气球上升

问题:

        ACM比赛时间再次举行!看到气球四处漂浮是多么的兴奋啊。但要告诉你一个秘密,评委们最喜欢的时间是猜测最流行的问题。比赛结束后,他们会数出每种颜色的气球,然后找到结果。今年,他们决定把这份可爱的工作留给你。

        输入:输入包含多个测试用例。每个测试用例的开头都有一个数字N(0 < N <= 1000)——分布的气球总数。接下来的N行分别包含一种颜色。气球的颜色是由多达15个小写字母组成的一串。带有N = 0的测试用例终止输入,并且不处理此测试用例。

        输出:对于每种情况,在一行上打印最流行问题的气球的颜色。保证对每个测试用例都有一个唯一的解决方案。

样例输入:

5
green
red
blue
red
red
3
pink
orange
pink
0

样例输出:

red
pink
源代码:
import java.util.Scanner; // 导入Scanner类,用于接收用户输入

public class BalloonRise { // 定义一个名为BalloonRise的公共类
    public static void main(String[] args) { // 主方法
        Scanner scanner=new Scanner(System.in); // 创建一个Scanner对象,用于接收用户输入
        String[] MaxColor=new String[1000]; // 定义一个字符串数组MaxColor,用于存储最多出现的颜色

        int maxColorNum=0; // 定义一个整型变量maxColorNum,用于记录最多颜色的数量
        while (true) // 无限循环,直到遇到break跳出循环
        {
            int n = scanner.nextInt(); // 读取用户输入的整数n
            if(n==0) // 如果n为0,则跳出循环
            {
                break;
            }
            String[] InputColor=new String[1000]; // 定义一个字符串数组InputColor,用于存储输入的颜色
            for(int i=0;i<n;i++) // 循环n次,读取用户输入的颜色
            {
                InputColor[i]= scanner.next(); // 将用户输入的颜色存入InputColor数组

            }

            int max=0; // 定义一个整型变量max,用于记录当前最多出现的颜色数量
            for(int i=0;i<n;i++) // 循环n次,遍历InputColor数组
            {

                int count=0; // 定义一个整型变量count,用于记录当前颜色出现的次数
                for(int j=i+1;j<n;j++) // 循环n-i次,从i+1开始遍历InputColor数组
                {
                    if(InputColor[i].equals(InputColor[j])) // 如果当前颜色与InputColor[j]相同
                    {
                        count++; // 计数器加1
                    }

                }
                if(max<count)//只有一种最多
                {
                    max=count; // 更新最大颜色数量
                    MaxColor[maxColorNum]=InputColor[i]; // 将当前颜色存入MaxColor数组
                        maxColorNum++; // 更新最多颜色数量
                }
                else if(max==count)//最多的颜色数存在一样多的
                {
                    MaxColor[maxColorNum]=InputColor[i]; // 将当前颜色存入MaxColor数组
                    if(max!=0) {
                        maxColorNum++; // 更新最多颜色数量
                    }
                }
            }
        }
        for(int i=0;i<maxColorNum;i++) // 循环maxColorNum次,输出最多出现的颜色
        {
            System.out.println(MaxColor[i]); // 输出MaxColor数组中的元素
        }

    }
}
算法思路如下:

1. 首先,我们需要接收用户输入的整数n,表示有n个气球。如果n为0,则跳出循环。
2. 然后,我们需要创建一个长度为1000的字符串数组InputColor,用于存储用户输入的气球颜色。
3. 接下来,我们需要遍历InputColor数组,统计每种颜色出现的次数。
4. 在统计过程中,我们需要记录当前最多出现的颜色数量max和对应的颜色。
5. 如果遇到一种新的颜色,其出现次数大于max,则更新max,并将该颜色存入MaxColor数组。
6. 如果遇到一种新的颜色,其出现次数等于max,也将其存入MaxColor数组。
7. 最后,遍历MaxColor数组,输出最多出现的颜色。

运行结果:

 

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

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

相关文章

累积阅读量高达1个亿了,刚好完成了一个小目标

大家好&#xff0c; 我是老洪。 做自媒体&#xff0c;这不仅仅是一个职业选择&#xff0c;更是我生活中不可或缺的一部分。 自从我踏入这个领域&#xff0c;时光如白驹过隙&#xff0c;转眼间已经走过了一段不短的旅程。 今天&#xff0c;当我打开后台数据&#xff0c;看到那累…

基于SpringBoot+Vue大学毕业设计管理系统设计和实现(源码+LW+调试文档+讲解等)

&#x1f497;博主介绍&#xff1a;✌全网粉丝1W,CSDN作者、博客专家、全栈领域优质创作者&#xff0c;博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f31f;文末获取源码数据库&#x1f31f; 感兴趣的可以先收藏起来&#xff0c;还…

《数字图像处理与机器视觉》案例一(库尔勒香梨果梗提取和测量)

一、引言 果梗是判断水果新鲜程度的重要标志&#xff0c;对水果的贮藏和保鲜也具有重要的参考价值。库尔勒香梨分级标准中对果梗有明确要求&#xff0c;要求果梗完整&#xff0c;但由于库尔勒香梨果梗颜色与果实接近&#xff0c;用传统的简单阈值分割方法难以提取。因此&#…

Vue79-路由组件独有的2个新的生命周期钩子

一、需求 news.vue路由组件被缓存了&#xff08;因为想要保留里面的输入框的数据&#xff01;&#xff09;&#xff0c;导致&#xff0c;路由页面切走&#xff0c;组件也不会被销毁&#xff0c;所以&#xff0c;beforeDestroy()函数就不会被执行&#xff0c;所以&#xff0c;定…

【数据挖掘】机器学习中相似性度量方法-闵可夫斯基距离

写在前面&#xff1a; 首先感谢兄弟们的订阅&#xff0c;让我有创作的动力&#xff0c;在创作过程我会尽最大能力&#xff0c;保证作品的质量&#xff0c;如果有问题&#xff0c;可以私信我&#xff0c;让我们携手共进&#xff0c;共创辉煌。 路虽远&#xff0c;行则将至&#…

Typora最新安装教程2024

Typora是一款广受好评的跨平台Markdown编辑软件&#xff0c;支持Windows、MacOS和Linux操作系统。它的设计旨在提供一个无干扰、高效且直观的写作环境。户快速管理和查找文档&#xff0c;支持直接在软件内浏览和操作文件结构。 Typora以其简洁而强大的功能集合&#xff0c;成为…

html做一个画热图的软件

完整示例 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><title>热图生成器</title><script src"https://cdn.plot.ly/plotly-latest.min.js"></script><style>body …

基于SpringBoot+大数据城市景观画像可视化设计和实现

&#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者&#xff0c;博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f31f;文末获取源码数据库&#x1f31f; 感兴趣的可以先收藏起来&#xff0c;…

Kafka~基础原理与架构了解

Kafka是什么 Kafka我们了解一直认为是一个消息队列&#xff0c;但是其设计初&#xff0c;是一个&#xff1a;分布式流式处理平台。流平台具有三个关键功能&#xff1a; 消息队列&#xff1a;发布和订阅消息流&#xff0c;这个功能类似于消息队列&#xff0c;这也是 Kafka 也被…

数组的操作

数组的操作也可以大概分为增删查改。 Arrays.toString**&#xff1a;**把数组内的内容输出。 获取长度 获得数组的元素数量。 格式&#xff1a; 数组名.length注意&#xff0c;请不要写成 ** 数组名.length&#xff08;&#xff09;** 存数据 如果使用了动态初始化或者我们…

C++11 标准库头文件模拟实现

系列文章目录 文章目录 系列文章目录前言● 智能指针模板● Vector1. 简单版本2. X 总结 前言 暂不考虑支持多线程 常用STL的简单实现&#xff0c;主要内容百行左右完成&#xff0c;意在理解STL的原理 ● 智能指针模板 SharedPtr #include <assert.h> #include <ato…

c#使用自带库对字符串进行AES加密、解密

文章目录 1 代码1.1 定义Aes加密类块1.2 在主函数中调用 2 获取Key和IV2.1 基本方法2.2 自定义Key2.3 技术方面的原理 参考文章&#xff1a; C#软件加密实例&#xff1f; 。 参考官文&#xff1a; Aes 类。 在使用C#的自带的System.Security.Cryptography.Aes模块进行加密和解…

图的学习.

目录 一、图的基本概念 1.1图的种类 1.2顶点的度、入度和出度 1.3边的权和网 1.4路径、路径长度和回路 二、图的存储结构 2.1邻接矩阵法 2.2邻接表法 2.3十字链表 2.4邻接多重表 三、图的遍历 3.1广度优先搜索 3.2深度优先搜索 四、图的应用 4.1最小生成树 4.1.…

密码没有未来

无密码认证的好处 引领无密码未来之路万能钥匙 英国通过具体法律打击可预测密码 强密码是抵御网络威胁的第一道防线 如何破解价值百万美元的加密钱包密码 复制此链接到微信打开阅读全部以发布文章 新 GPU 在不到一小时内打开了网络上 59% 的密码。 现代计算机的能力不断增…

AGV机器人的调度开发分析(1)- 内核中的路线规划

准备开始写一个系列&#xff0c;介绍下AGV机器人的调度的开发和应用。 按照openTCS的核心内容&#xff0c;国内多家广泛应用于AGV的调度。那么架构图如下&#xff1a; Kernel中有一个是Routing&#xff0c;这是路由规划模块&#xff0c;需要实现的细节功能包括如下&#xff1a…

cesium 包络线

cesium 包络线 以下为源码直接复制可用 1、实现思路 通过turf.js中union方法来计算包络线官方地址:https://turfjs.fenxianglu.cn/ 闪烁线请查看cesium轨迹线(闪烁轨迹线) 2、示例代码 <!DOCTYPE html> <html lang="en"&g

Pwn刷题记录(不停更新)

1、CTFshow-pwn04&#xff08;基础canary&#xff09; ​ 好久没碰过pwn了&#xff0c;今天临时做一道吧&#xff0c;毕竟刚联合了WSL和VSCode&#xff0c;想着试着做一道题看看&#xff0c;结果随手一点&#xff0c;就是一个很少接触的&#xff0c;拿来刷刷&#xff1a; ​ …

计算机组成原理 —— 存储系统(DRAM和SRAM,ROM)

计算机组成原理 —— 存储系统&#xff08;DRAM和SRAM&#xff09; DRAM和SRAMDRAM的刷新DRAM地址复用ROM&#xff08;Read-Only Memory&#xff08;只读存储器&#xff09;&#xff09; 我们今天来看DRAM和SRAM&#xff1a; DRAM和SRAM DRAM&#xff08;动态随机存取存储器&…

springboot 酒庄内部管理系统(源码+sql+论文)

绪论 1.1 系统研究目的意义 随着信息技术的不断发展&#xff0c;我们现在已经步入了信息化的时代了&#xff0c;而信息时代的代表便是网络技术的日渐成熟&#xff0c;而现在网络已经和我们的生活紧密的联系起来了&#xff0c;我们不敢想象没有网络我们的生活会像怎么样&#…

六、资产安全—数据管理(CISSP)

目录 1.学习目标 2.数据管理最佳参考实践 3.数据质量维度:DAMA 4.数据生命周期控制 5.数据净化方式 6.生命周期安全控制 7.EOL、EOS、EOSL 1.学习目标 2.数据管理最佳参考实践 数据策略: 角色与责任: 数据所有权: