PAT 5 分小组(字符串与字符转换)

2023-10-27

分小组-java

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
ABC EFH DGI
ABC EFI DGH
ABC EGH DFI
ABC EGI DFH
ABC EHI DFG
ABC FGH DEI
ABC FGI DEH
ABC FHI DEG
ABC GHI DEF
ABD CEF GHI
ABD CEG FHI
ABD CEH FGI
ABD CEI FGH
ABD CFG EHI
ABD CFH EGI
ABD CFI EGH
ABD CGH EFI
ABD CGI EFH
ABD CHI EFG
ABD EFG CHI

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


public class Main
{
	public static String remain(int[] a)
	{
		String s = "";
		for(int i=0; i<a.length; i++){
			if(a[i] == 0) s += (char)(i+'A');
		}	
		return s;
	}
	
	public static void f(String s, int[] a)
	{
		for(int i=0; i<a.length; i++){
			if(a[i]==1) continue;
			a[i] = 1;
			for(int j=i+1; j<a.length; j++){
				if(a[j]==1) continue;
				a[j]=1;
				for(int k=j+1; k<a.length; k++){
					if(a[k]==1) continue;
					a[k]=1;
					System.out.println(s+" "+(char)(i+'A')+(char)(j+'A')+(char)(k+'A') +" "+remain(a));  //填空位置
					a[k]=0;
				}
				a[j]=0;
			}
			a[i] = 0;
		}
	}
	
	public static void main(String[] args)
	{
		int[] a = new int[9];		
		a[0] = 1;
		
		for(int b=1; b<a.length; b++){
			a[b] = 1;
			for(int c=b+1; c<a.length; c++){
				a[c] = 1;
				String s = "A" + (char)(b+'A') + (char)(c+'A');
				f(s,a);
				a[c] = 0;
			}
			a[b] = 0;
		}
	}
}

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

PAT 5 分小组(字符串与字符转换) 的相关文章

  • MySQL逻辑架构图分析

    MySQL逻辑架构图 大体来说 MySQL 可以分为 Server 层和存储引擎层两部分 Server层 大多数MySQL的核心服务功能都在这一层 包括连接器 查询缓存 分析器 优化器 执行器 以及所有内置函数 日期 时间 数学 加密函数等

随机推荐

  • pnpm:高效、快速的npm

    什么是pnpm performent npm 速度快 节省磁盘空间的软件包管理器 为什么使用pnpm 使用npm安装依赖时 每次都会下载文件到硬盘中 当项目数量较多时 依赖包会占据大量的内存 pnpm就是解决这个问题的 pnpm如何解决 p
  • 手把手教你设置Typora的图床-gitee

    所需环境 typora node软件 所需软件及配置文末可下载 typora的激活安装可看以往教程点我查看typora激活 typora结合gitee图床的优势 分享文件只需要分享一个 md文件即可 插入的图片依旧可以访问 图床不限制 访问
  • Python创建索引,批量插入数据测试

    测试 coding utf 8 Created on 2019 6 13 10 19 25 author chenlin3 import esSdk class EsSdkTest def test self name EsSdkTest
  • CVE-2023-21839 【vulhub weblogic 漏洞复现】

    漏洞概述 由于Weblogic IIOP T3协议存在缺陷 当IIOP T3协议开启时 允许未经身份验证的攻击者通过IIOP T3协议网络访问攻击存在安全风险的WebLogic Server 漏洞利用成功WebLogic Server可能被
  • Docker部署springboot项目并连接上docker的mysql

    首先 我是参考着几篇博客 https blog csdn net hangao233 article details 104395693 https www jianshu com p 397929dbc27d 第一步 先在虚拟机或服务器上
  • 【毕业设计】机器学习的员工离职模型研究-python

    目录 前言 课题背景和意义 实现技术思路 变量分析 数据导入 构建机器学习模型 1 1 复制数据删除不需要的变量 1 2 列变量属性分类 实现效果图样例 前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备
  • 谁动了我的奶酪:奶酪墙上的话 ----- 整理完整篇

    谁动了我的奶酪墙上的话 如果你无所谓 你会怎样做呢 每天的生活都会因偶然或必然的事而不断变化着 提醒自己要不断地适应变化 拥有奶酪 就拥有幸福 奶酪对你越重要 你就越想抓住它 如果你不改变 你就会被淘汰 如果你无所畏惧 你会怎样做呢 经常闻
  • 类和对象

    1 面向过程 在开发一个程序的时候 看中的是中间的过程 每一个过程步骤都需要自己去做 例如C语言 看中的是过程的开发 2 面向对象 当开发一个程序的时候 不看重具体的过程 看中谁能帮我去完成这件事情 找人 对象 帮我去做 前期去设计类的时候
  • N圆最密堆积、最小外接正方形的matlab求解(二维、三维等圆Packing 问题)

    圆形最密堆积 最小外接正方形的matlab求解 二维 三维等圆Packing 问题 0 前言 1 N个圆的最小外接正方形求解 2 N个球的最小外接立方体求解 惯例声明 本人没有相关的工程应用经验 只是纯粹对相关算法感兴趣才写此博客 所以如果
  • cesium for ue->CesiumRunTime

    共118个文件 23283行 含注释 截至2022年11月10日 剩下118个文件 23283行 截至2022年11月20日 剩下108个文件 21646行
  • react补充--hooks

    1 setState setState更新状态的2种写法 1 setState stateChange callback 对象式的setState 1 stateChange为状态改变对象 该对象可以体现出状态的更改 2 callback是
  • 「AIGC」智能美学,AI绘画 API 激发无限创意

    引言 随着人工智能 AI 技术的迅猛发展 AI绘画 API 正在以惊人的速度改变艺术创作的面貌 它不仅为艺术家和创作者提供了全新的创作工具 还激发了无限的创意和想象力 在这个智能美学的时代 让我们一起探索 AI 绘画 API 如何推动艺术创
  • 【转】数据库的设计(E-R图,数据库模型图,三大范式)

    一 数据库设计的概念 数据库设计是将数据库中的数据实体及这些数据实体之间的关系 进行规划和结构化的过程 二 数据库设计的重要性 如果一个数据库没有进行一个良好的设计 那么这个数据库完成之后他的缺点是 1 效率会很低 2更新和检索数据时会出现
  • python最大最小距离算法贴近度评价法

    1 大最小贴近度评价法 概念 贴近度表示两个模糊几何之间的彼此接近程度 在模糊模式识别方法中采用贴近度的大小识别待判别模糊子集的模式类别 为衡量待识别子集的类别 需要判别各个阶段与标杆模糊集合之间的相对贴近程度 上表中第一列是优化 标杆 模
  • 学习TensorFlow,TensorBoard可视化网络结构和参数

    在学习深度网络框架的过程中 我们发现一个问题 就是如何输出各层网络参数 用于更好地理解 调试和优化网络 针对这个问题 TensorFlow开发了一个特别有用的可视化工具包 TensorBoard 既可以显示网络结构 又可以显示训练和测试过程
  • 春招实习前端面试题汇总

    经历了两个月的复习 笔试 面试 现在总结一下 前端面试中我认为经常被问及的问题 计算机网络部分 tcp udp的区别 三次握手 四次挥手 谈谈你对http协议的理解 这里可以深入学习一下HTTPS http1 2 3 ws协议也可以了解 状
  • linux中,管道能够在同一进程中进行通信吗?

    linux中 管道能够在同一进程中进行通信吗 答案是否定的 管道是用于不同进程之间通信 不能再同一进程中进行通信 同一进程中 直接进行参数传递就行了 不设计通信问题 不同进程之间才需要通信 通信类别有多种 如管道 共享内容 其中 管道又有匿
  • 微服务---今年主要实践路

    福州 2021 04 01 潮湿 享受的天气 还是一如往常脑袋里还是昨天搭建4台服务遇到问题 今天提前1小时到公司 整理思路 今天讲一些普通知识记录 网站高手说明 Spring boot 是 Spring 的一套快速配置脚手架 可以基于sp
  • 第17课 处理边界(增加边界)

    文章目录 1 卷积边界问题 2 处理边界 2 1 BORDER DEFAULT 常用 2 2 BORDER CONSTANT 自定义指定像素值 2 3 BORDER REPLICATE 通过插值计算 2 4 BORDER WRAP 另外一边
  • PAT 5 分小组(字符串与字符转换)

    分小组 java 9名运动员参加比赛 需要分3组进行预赛 有哪些分组的方案呢 我们标记运动员为 A B C I下面的程序列出了所有的分组方法 该程序的正常输出为 ABC DEF GHI ABC DEG FHI ABC DEH FGI ABC