#689. 素数环PrimeRing [3*]

素数环PrimeRing [3*]

说明

把1~N这N个整数摆成一个环,要求任意相邻两个数的和为素数。按字典序打印出以1开始的素数环

Input

一个整数N (<=10)

Output

每行一个素数环。每个数之间用一个空格隔开。
无解输出 No Solution

Sample Input

【样例输入1】
4

【样例输入2】
3

Sample Output

【样例输出1】
1 2 3 4
1 4 3 2

【样例输出2】
No Solution 

Hint

为什么只要求以1开始的解。只有以1开始会漏掉其他可能的解吗?
优化:思考有哪些操作是不断要重复进行的,怎么优化。如何提高剪枝效率。

Source

基础算法-回溯深搜