package sort;
import java.util.Arrays;
public class Test38_3 {
public static void main(String[] args) {
PL("ABCEFGHI");
}
public static void PL(String str) {
char[] ch = str.toCharArray();
int[] ii = { 1, 2, 3, 1, 2, 3, 2, 2 };
PL(ii, 0);
}
private static void PL(int[] ch, int i) {
if (i >= ch.length - 1) {
Check(ch);
}
for (int j = i; j < ch.length; j++) {
int temp = ch[i];
ch[i] = ch[j];
ch[j] = temp;
PL(ch, i + 1);
temp = ch[i];
ch[i] = ch[j];
ch[j] = temp;
}
}
private static void Check(int[] ch) {//判断本次排序是否符合条件
// TODO Auto-generated method stub
if (ch[0] + ch[1] + ch[2] + ch[3] == ch[4] + ch[5] + ch[6] + ch[7]
&& ch[0] + ch[2] + ch[4] + ch[6] == ch[1] + ch[3] + ch[5]
+ ch[7]
&& ch[0] + ch[1] + ch[4] + ch[5] == ch[2] + ch[3] + ch[6]
+ ch[7]) {
System.out.println(Arrays.toString(ch));
}
}
}