第七届蓝桥杯省赛——5分小组

news2024/11/29 4:31:21

题目:

9名运动员参加比赛,需要分3组进行预赛。

有哪些分组的方案呢?

我们标记运动员为 A,B,C,... I

下面的程序列出了所有的分组方法。

该程序的正常输出为:

ABC DEF GHI

ABC DEG FHI

ABC DEH FGI

ABC DEI FGH

ABC DFG EHI

ABC DFH EGI

ABC DFI EGH

ABC DGH EFI

ABC DGI EFH

ABC DHI EFG

ABC EFG DHI

..... (以下省略,总共560行)。

分析:

这道题分三个组,第一个组我们让他在主函数里遍历所有可能,第二组我们建一个新的自定义函数,里面弄三个嵌套循环,求三个

步骤:

package 历届刷题前7214;

public class 分小组 {

    public static void main(String[] args) {
        int[] a = new int[9];//数组用来储存9个字母
        a[0] = 1;//我们让第一项始终为1
        for (int i = 1; i < a.length; i++) {//第二个位置
            a[i] = 1;//每到达下一项就让这一项等于1
            for (int j = i + 1; j < a.length; j++) {//第三个位置
                a[j] = 1;//每到达下一项就让这一项等于1
                String s = "A" + (char) (i + 'A') + (char) (j + 'A');//第一组所有的可能
                f(s, a);
                a[j] = 0;//退出来的时候归0
            }
            a[i] = 0;//退出来的时候归0
        }
    }

    private static void f(String s, int[] a) {
        for (int i = 0; i < a.length; i++) {//第四个位置
            if (a[i] == 1) {//如果等于1的话那就继续循环直到不是1为止
                continue;
            }
            a[i] = 1;//不是1现在赋1
            for (int j = i + 1; j < a.length; j++) {//第五个位置
                if (a[j] == 1) {
                    continue;
                }
                a[j] = 1;
                for (int j2 = j + 1; j2 < a.length; j2++) {//第六个位置
                    if (a[j2] == 1) {
                        continue;
                    }
                    a[j2] = 1;
                    //主函数里的s代表前三个,f函数里i,j,j2代表中间三个,然后用remain求出所有等于0的,就是剩余的
                    System.out.println(s + " " + (char) ('A' + i) + "" + (char) ('A' + j) + "" + (char) ('A' + j2) + " "
                            + remain(a));
                    a[j2] = 0;
                }
                a[j] = 0;
            }
            a[i] = 0;
        }
    }

    public static String remain(int[] a) {
        String s = "";
        for (int i = 0; i < a.length; i++) {
            if (a[i] == 0)//如果说等于0那就没出现过,直接赋值给s
                s += (char) (i + 'A');
        }
        return s;
    }

}

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

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

相关文章

VFIO软件依赖——VFIO协议

文章目录背景PCI设备模拟PCI设备抽象VFIO协议实验Q&A背景 在虚拟化应用场景中&#xff0c;虚拟机想要在访问PCI设备时达到IO性能最优&#xff0c;最直接的方法就是将物理设备暴露给虚拟机&#xff0c;虚拟机对设备的访问不经过任何中间层的转换&#xff0c;没有虚拟化的损…

2023年小鹏新能源汽车核心部件解密

小鹏主要硬件清单(G9车型) 感知层 从硬件上看,G9搭载两颗NVIDIA DRIVE Orin 智能辅助驾驶芯片,算力达到 508 TOPS。此外,全车周边31 个感知元器件,(800万双目、4个300万侧前侧后、4个130万环视、1个170万后视、1个100万DMS)、12个超声波雷达、5个毫米波雷达、2个速…

TeamFiltration:一款针对O365 AAD账号安全的测试框架

关于TeamFiltration TeamFiltration是一款针对O365 AAD账号安全的跨平台安全测试框架&#xff0c;在该工具的帮助下&#xff0c;广大研究人员可以轻松对O365 AAD账号进行枚举、喷射、过滤和后门植入等操作。TeamFiltering与CrackMapExec非常相似&#xff0c;它可以创建并维护一…

四大垃圾回收算法七大垃圾回收器

JVM的运行时内存也叫做JVM堆&#xff0c;从GC的角度可以将JVM分为新生代、老年代和永久代。其中新生代默认占1/3堆内存空间&#xff0c;老年代默认占2/3堆内存空间&#xff0c;永久代占非常少的对内存空间。新生代又分为Eden区、SurvivorFrom区和SurvivorTo区&#xff0c; Eden…

Python基础知识复习以及第三方库openxel的初步使用

目录文件python文件打开函数Python中的split函数详细解释List对象list添加元素的三种方法删除元素反转Python第三方库openxel的初步使用excel文件对象open操作excel入门文件 python文件打开函数 语法&#xff1a;open&#xff08;file, mode ‘r’, buffering-1, encodingNon…

【高性价比】初学者入门吉他值得推荐购买的民谣单板吉他品牌—VEAZEN费森吉他

“在未知的世界里&#xff0c;我们是一群不疲不倦的行者&#xff0c;执念于真善美&#xff0c;热衷于事物的极致。我们抽丝剥茧&#xff0c;不断地打败自己&#xff0c;超越自己&#xff0c;我们无所畏惧终将成为巨人。”这是VEAZEN吉他官网首页上很明显的一段话&#xff0c;也…

Learning C++ No.9【STL No.1】

引言&#xff1a; 北京时间&#xff1a;2023/2/13/18:29&#xff0c;开学正式上课第一天&#xff0c;直接上午一节思想政治&#xff0c;下午一节思想政治&#xff0c;生怕我们……&#xff0c;但&#xff0c;我深知该课的无聊&#xff0c;所以充分利用时间&#xff0c;把我的小…

MongoDB 索引

MongoDB 索引 索引通常能够极大的提高查询的效率&#xff0c;如果没有索引&#xff0c;MongoDB在读取数据时必须全集合扫描选取符合查询条件的记录。这种扫描全集合的查询效率是非常低的&#xff0c;特别在处理大量的数据时&#xff0c;查询可以要花费几十秒甚至几分钟&#x…

2023年城投债投资研究报告

第一章 概况 城投债又称“准市政债”&#xff0c;是地方投融资平台作为发行主体&#xff0c;公开发行企业债和中期票据&#xff0c;其主业多为地方基础设施建设或公益性项目。从承销商到投资者&#xff0c;参与债券发行环节的人&#xff0c;都将其视为是当地政府发债。伴随“打…

高压放大器在超声导波钢轨传播中的应用

实验名称&#xff1a;高压放大器在超声导波钢轨传播中的应用研究方向&#xff1a;无损检测测试目的&#xff1a;超声导波具有传播距离远、检测距离长的特点&#xff0c;在钢轨无损检测领域受到越来越多的关注。本文使用有限元仿真方法和现场实验方法&#xff0c;对钢轨各模态超…

四类(七种)排序算法总结

一、插入排序 基本思想&#xff1a; 每次将一个待排序的对象&#xff0c;按其关键码大小&#xff0c;插入到前面已经排好序的一组对象的适当位置上&#xff0c;直到对象全部插入为止。即边插入边排序&#xff0c;保证子序列中随时都是排好序的。 基本操作——有序插入&#xff…

搭建pclpy环境与读取pandaset数据并转换为pkl格式为pcd格式

1.搭建pclpy环境 问题&#xff1a;需要处理pcd文件&#xff0c;于是开始摸索搭建环境&#xff0c;有python-pcl&#xff0c;但是安装过程频频出现问题&#xff0c;于是转向pclpy。 参考链接&#xff1a;GitHub - davidcaron/pclpy: Python bindings for the Point Cloud Libr…

通达信量化接口怎么开发的?

通达信量化接口从广义上看&#xff0c;其实是面对股市有利的系统开发&#xff0c;通过智能化或者说程序化的交易体系直接构建了持仓下单的简单运作方式&#xff0c;对此&#xff0c;通达信量化接口又是如何开发出来的呢&#xff1f;一、函数的调用&#xff1a;相关函数调用结果…

Python语言零基础入门教程(十七)

Python 文件I/O 本章只讲述所有基本的 I/O 函数&#xff0c;更多函数请参考Python标准文档。 #### 打印到屏幕 最简单的输出方法是用print语句&#xff0c;你可以给它传递零个或多个用逗号隔开的表达式。此函数把你传递的表达式转换成一个字符串表达式&#xff0c;并将结果写…

企业分布式网络监控

IT 基础架构已成为提供基本业务服务的基石&#xff0c;无论是内部管理操作还是为客户托管的应用程序服务。监控IT基础设施至关重要&#xff0c;并且已经建立。SMB IT 基础架构需要简单的网络监控工具来监控性能和报告问题。通常&#xff0c;几个 IT 管理员配置网络设备、防火墙…

private static final Long serialVersionUID= 1L详解

我们知道在对数据进行传输时&#xff0c;需要将其进行序列化&#xff0c;在Java中实现序列化的方式也很简单&#xff0c;可以直接通过实现Serializable接口。但是我们经常也会看到下面接这一行代码&#xff0c;private static final Long serialVersionUID 1L&#xff1b;这段代…

实施工程师需要知道的常见linux命令

做为现场实施人员&#xff0c;操作linux服务器几乎是每天的必备工作&#xff0c;那么有哪些命令是工作中需要掌握的&#xff0c;下面会总结出来。 一、磁盘管理 1.1 查看当前目录 使用pwd命令&#xff0c;如下图所示&#xff0c;可以看到当前所处的目录是/root这个目录 1.2 进…

thymeleaf模板注入学习与研究--查找与防御

一、日常编码中常见的两种漏洞场景 1.1 模板参数外部可控 RequestMapping("/path")public String path(RequestParam String lang) {return lang ;}实际开发过程中 依靠我丰富的想象力只能想出 换主题 这种场景下可能会出现 大佬们自行脑补吧。 1.2 使用GetMappin…

【面试题】常见前端基础面试题(HTML,CSS,JS)

大厂面试题分享 面试题库后端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★地址&#xff1a;前端面试题库html语义化的理解代码结构: 使页面在没有css的情况下,也能够呈现出好的内容结构有利于SEO: 爬虫根据标签来分配关键字的权重,因此可以和搜索引擎…

电压放大器在液滴微流控芯片的功能研究中的应用

实验名称&#xff1a;电压放大器在液滴微流控芯片的功能研究中的应用研究方向&#xff1a;微流控生物芯片测试目的&#xff1a;液滴微流控技术能够在微通道内实现液滴生成&#xff0c;精准控制生成液滴的尺寸以及生成频率。结合芯片结构设计和外部控制条件&#xff0c;可以对液…