public class test3 {
public static void main(String[] args) {
for(int i=122345;i<=543221;i++){
String x=i+"";
char[] chars = x.toCharArray();
List<String> list = new ArrayList<>();
List<String> strList = new ArrayList<>();
strList.add("1");
strList.add("2");
strList.add("2");
strList.add("3");
strList.add("4");
strList.add("5");
for (char aChar : chars) {
list.add(aChar+"");
}
// 获取2的索引确保2是有两个
int i1 = list.indexOf("2");
int i2 = list.lastIndexOf("2");
// 获取4的索引 判断不为2
int i3 = list.lastIndexOf("4");
// 3 5 不能相连
int i4 = list.lastIndexOf("3");
int i5 = list.lastIndexOf("5");
int abs = Math.abs(i4 - i5);
//新建的strList 包含122345 使用遍历得出的122345到543221 得出的所有包含12345的数字
if(list.containsAll(strList)&&i1!=i2&&i3!=2&&abs!=1){
System.out.println(list.get(0)+list.get(1)+list.get(2)+list.get(3)+list.get(4)+list.get(5));
}
}
}
}
用1、2、2、3、4、5 这六个数字,用java 写一个main 函数,打印出所有不同的排列,要求:"4"不能在第三位,"3"与"5"不能相连.
最新推荐文章于 2022-09-20 01:22:58 发布