/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package pkg2nsort;
import java.util.Scanner;
/**
*
* @author 任强的小本本
*/
public class Main {
public static void main(String args[]) {
Scanner cin = new Scanner(System.in);
System.out.print("enter number>");
int n = cin.nextInt();
int[] arr = new int[2 * n];
insertNum(arr, 1, n);
}
static boolean insertNum(int[] arr, int insertNum, int endNum) {
boolean flag = false;
for (int i = 0; i < arr.length - insertNum - 1; i++) {
if (arr[i] == 0 && arr[i + insertNum + 1] == 0) {
arr[i] = insertNum;
arr[i + insertNum + 1] = insertNum;
if (insertNum == endNum) {
System.out.print("found:");
for (int n : arr) {
System.out.print(n + " ");
}
System.out.println();
flag=true;
} else {
flag = insertNum(arr, insertNum + 1, endNum);
}
arr[i] = 0;
arr[i + insertNum + 1] = 0;
}
}
return flag;
}
}
2N个数排成一行(每个数有2个), 2个1之间有1个数,2个2 之间有2个数,...2个N之间有N个数... 例312132
最新推荐文章于 2020-11-28 06:09:01 发布