`

12345这五个数,打印出它所有的组合。4不能在中间,3和5不能挨着

 
阅读更多
public class TestIntNumber {

private int[] numbers = new int[] { 1, 2, 3, 4, 5 };

public int n;

private String lastResult = "";

private boolean validate(String s) {
if (s.compareTo(lastResult) <= 0)
return false;
if (s.charAt(2) == '4')
return false;
if (s.indexOf("35") >= 0 || s.indexOf("53") >= 0)
return false;
return true;
}

public void list(String index, String result) {
for (int i = 0; i < numbers.length; i++) {
if (index.indexOf(i + 48) < 0) {
String s = result + String.valueOf(numbers[i]);
if (s.length() == numbers.length) {
if (validate(s)) {
System.out.println(s);
lastResult = s;
n++;
}
break;
}
list(index + String.valueOf(i), s);
}
}
}

public static void main(String[] args) {
TestIntNumber t = new TestIntNumber();
t.list("", "");
System.out.println("总数:" + t.n);

}

}
分享到:
评论

相关推荐

    java多线程每个线程挨着打印ABC的4种实现方式

    java多线程每个线程挨着打印ABC的4种实现方式,有4个线程t1、t2、t3、t4,t1打印A后t2打印A再t3打印A再t4打印A,然后从新回到t1打印B再t2打印B...t4打印B... 4个线程轮流打印abc... 一个线程可以理解为一个人,打印...

    练习P20入门版答案

    程序设计训练基础题库 1. 随机产生一些1—100之间的整数,直到产生的数为50...20. 有30个男人女人和小孩同在一家饭馆进餐,共花了五十先令,其中男宾3先令,女宾2先令,小孩1先令。试编程求出男人女人小孩各多少人?

    pascal循环结构练习题

    A、B、C、D、E 五个人合伙夜间捕鱼,凌晨时都疲惫不堪,各自在河边的树丛中找到地方睡着了,日上三竿,E 第一个醒来,他将鱼数了数,平分成五分,把多余的一条扔进河中,拿走一份回家去了,D 第二个醒来,他并不知道...

    一年级数学下册第三单元100以内数的认识3.1数100以内的数课时练冀教版

    在这个过程中,他们不仅要学会数100以内的整数,还要能理解和应用这些数字。 1. **数100以内的数** 学习数数是数学的基础,100以内的数包括了0到100的所有整数。学生需要能够从1开始,按照顺序依次数到100,同时也...

    二年级数学下册第四单元万以内数的认识4.5练习四课时练北京版202003172100

    掌握这一知识点,学生就能正确地读出和写出万以内的任意数,并理解每个数位上的数字代表的意义。 其次,数的顺序是数的认识中极其重要的部分。学生需要认识到数是有顺序的,它们是连续排列的。如5000这个数,它前面...

    人教二年级数学下册以内数的认识PPT学习教案.pptx

    7. **数的组成**:学习数的组成,理解每个数是由多少个不同的计数单位组成的,例如2356由2个千、3个百、5个十和6个一组成。 8. **数的连续计数**:练习一个一个地数数,例如从9976数到10000,以巩固学生的数数技能...

    2020春七年级数学下册第十四章位置与坐标14.1用有序数对表示位置同步练习无答案新版青岛版202106171163

    例如,(3,5)表示第3行第5列,(1,3)和(3,1)不表示同一个点,(2,2)和(2,3)之间的距离是1个单位等。 综上所述,这个练习帮助学生理解和应用有序数对来表示二维平面上的位置,是数学中的基础概念,对于理解更复杂...

    新版人教版五年级数学上册期中考试题(附答案).pdf

    4. **3的倍数特征**:0、5、9中任选两个数字组成的数中,是3的倍数的有0和5(50),0和9(90),同时是2、3、5的倍数的数必须以0结尾,且所有数字相加的和能被3整除,所以是90。 5. **单价计算**:用148.8元买了12...

    人教部编版五年级数学上册期中考试题及答案【精品】.pdf

    这个期中考试题覆盖了小学五年级数学的多个重要知识点,包括但不限于质数与合数的概念、单位转换、小数乘法、分数的基本性质、几何图形的理解、代数运算、概率问题、方向判断、体积计算、解方程、空间想象和应用题的...

    课件找规律课件找规律

    接着,学生被引导进行更复杂的操作,如每次框出3、4、5个数,计算可以得到的不同和,并通过平移的方法寻找答案。这种方法涉及到序列的滑动和模式识别,对于培养学生的抽象思维和模式识别能力大有裨益。通过观察表格...

    (3.3.2)--扩展阅读:组合选择器1

    与相邻兄弟选择器不同,它匹配的是所有在A元素之后的B元素,它们都属于同一个父元素,但并不一定要紧挨着A元素。例如,`img ~ p`会选择所有在`&lt;img&gt;`元素之后的`&lt;p&gt;`元素,无论它们之间有多少其他元素。 理解并熟练...

    幼儿园大班数学相邻数.pptx

    首先,课件对“相邻数”这一核心概念给出了明确定义:相邻数是指在数轴上紧挨着的两个数字,它们之间相差1。这个概念虽然简单,但对于幼儿来说,却是理解数序、培养数感的第一步。在数轴上,2的前后分别是1和3,通过...

    visual c++ vc在窗口标题栏上添加自己的按钮.挨着最小化按钮

    在Visual C++ (VC++) 中,为窗口标题栏添加自定义按钮是一项常见的需求,这可以使应用程序具有更个性化的用户界面。下面将详细讲解如何实现这一功能。 首先,我们需要理解Windows API(应用程序接口)在创建和操作...

    2014年小学一年级数学下学期期末考试题.docx

    在数的构成方面,题目通过要求学生进行数字组合和分解,帮助他们理解数的结构,例如将4个一和6个十组合成64,或确认75由7个十和5个一组成。这类问题旨在巩固学生对十进制计数系统的认识。 数位理解题目则让学生识别...

    腾讯 研发工程师笔试真题

    爸爸去哪儿中的3对父子站成一排,各自父子之间不能相邻,比如石头不能和郭涛挨着,以此类推,共有几种站法?** - **解析:** - 这是一道典型的排列组合问题。对于三对父子,我们需要计算在约束条件下(即每个父亲...

    最新二年级上册数学应用题解答问题练习题(附答案)(1).doc

    23. 全家福的排列问题,由于佩奇和乔治要挨着站在中间,所以总共有2 × 2 × 2 = 8种不同的站法。 24. 电线长度的问题,72米减去两次用掉的长度,即72 - 19 - 34 = 19米。 25. 正方形四周植树,每边6棵,四个角各...

    一年级数学下册4100以内数的认识4.4数的顺序课时练新人教版202004182158

    综上所述,在"4100以内数的认识4.4数的顺序"这一课时中,通过有序地组织数的认识、数的顺序和规律性数列的填写等练习,学生不仅能提高自己的数学计算能力,还能逐步培养逻辑思维和问题解决能力。这些知识和技能将为...

    二年级数学下册第十一单元总复习11.1万以内数的认识课时练北京版20200317289

    例如,对于数6899来说,它紧挨着的两个数就是6898和6900。这样的练习能帮助学生建立数的顺序性和连续性的概念。 数的大小比较则是学生学习万以内数所必须掌握的技能之一。通过比较大小,例如530与4300,学生可以...

    等你的回答钢琴曲谱数字简谱钢琴曲谱.pdf

    简谱使用阿拉伯数字1、2、3、4、5、6、7代表七个基本音阶,即“do、re、mi、fa、sol、la、si”。在简谱中,音符上方的点表示高一个八度,下方的点表示低一个八度。当两个音符紧挨着时,不加点表示同一个八度。在钢琴...

    C语言学习(直接指出重点,省去挨着看的烦恼)

    C语言是一种基础且强大的编程语言,它以其简洁的语法和高效执行著称。在学习C语言时,了解并掌握其核心概念是至关重要的。以下是一些C语言学习的重点笔记: 1. 变量与存储: - 变量在C语言中分配存储空间,例如3e3...

Global site tag (gtag.js) - Google Analytics