乒乓球队比赛分组问题
2015-12-08 12:29
363 查看
题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
import javax.swing.JOptionPane; public class Game { public static void main(String[] args) { JOptionPane.showMessageDialog(null, printMatch()); } static String printMatch() { StringBuilder all = new StringBuilder(); String right = null; //xyz数组代表 x,y,z三个队员,初始值表示未分配对手, //1值表示已经分配对手 char[] xyz = new char[] {'x','y','z'}; char a,b,c; for (int i=0; i<3; i++) { a = xyz[i];//为a分配对手 for (int j=0; j<3; j++) { //为b分配对手 b = xyz[j]; if (b != a) { for (int k=0; k<3; k++) { c = xyz[k];//为c分配对手 if (c != b && c != a) {//可行分组 all.append(String.format("a--%c,b--%c,c--%c\n" ,a,b,c)); //条件限制 if (a != 'x' && c != 'x' && c != 'z') right = String.format("a--%c,b--%c,c--%c\n" ,a,b,c); break; } } } } } all.insert(0, "所有分组:\n"); all.append("要求的分组:\n"+right); return all.toString(); } }
相关文章推荐
- 【Solutions系列】故障统计专题图
- SlidingMenu常用的一些属性设置
- setTimeout和setInterval方法
- 机器学习中的范数规则化之(一)L0、L1与L2范数
- MySQL explain结果详解
- Maven tomcat插件配置和使用
- OC 构造方法(对象初始化)
- js console 函数详解(js开发调试的利器)即 Firebug控制台
- MyC语言练习
- java面向对象-封装
- 黑马程序员————集合之概念(一)
- 四则运算的开发
- javaWeb 实现上传+下载 文件
- C#实现将文件转换为XML的方法
- 计算机图形学:多边形的扫描转换算法(有详细代码)
- find和findstr
- OC description和sel
- Android 读取蓝牙设备信息开发
- 浅谈操作系统对内存的管理
- 警惕UNIX下的LD_PRELOAD环境变量