class A {
public static void main(String[] args){
/*
该公司笔试题就1个,要求在10分钟内作完。
题目如下:用1、2、2、3、4、5这六个数字,用java写一个main函数,打印出所有不同的排列,如:512234、412325等,要求:"4"不能在第三位,"3"与"5"不能相连。
请问这题怎么做呢
*/
Z: for (int i =122345;i<=543221 ; i++) {
int[] a = new int[6]; int s =0;
for (int j =i;j>0 ;j/=10 ) {
a[s]=j%10;
s++;
}
int[] ar ={1,2,2,3,4,5};
int sum =0;
W: for (int x =0;x<=5 ;x++ ) {
for (int y =0 ;y<=5 ;y++ ) {
if (a[x] ==ar[y]) {
sum++;
ar[y]=100;
continue W;
}
}
}
if (sum ==6) {
if (a[3]!=4) {
for (int t =0;t<=4 ;t++ ) {
if (a[t]==3||a[t]==5) {
if (a[t+1]!=3&&a[t+1]!=5) {
System.out.println(i);
continue Z;
}
}
}
}
}
}
}
}
|
|