#P1165. The Primes

The Primes

描述

|---|---|---|---|---|

| 1 | 1 | 3 | 5 | 1 |

|---|---|---|---|---|

| 3 | 3 | 2 | 0 | 3 |

|---|---|---|---|---|

| 3 | 0 | 3 | 2 | 3 |

|---|---|---|---|---|

| 1 | 4 | 0 | 3 | 3 |

|---|---|---|---|---|

| 3 | 3 | 3 | 1 | 1 |

|---|---|---|---|---|

(Figure 1)

图1展示了一个5×5的数字方阵,其中:

  • 每一行每一列以及两条对角线上的数字均可组成一个5位质数
    • 行:从左到右读取
    • 列:从上到下读取
    • 对角线:从左到右读取(主对角线和副对角线)
  • 这些质数必须满足相同的数字和(例如样例中的数字和为1111)。
  • 方阵的左上角数字是预先给定的(例如样例中为11)。
  • 允许同一个质数在方阵中重复出现
  • 如果存在多个解,必须全部输出
  • 5位质数不能以0开头(例如0000300003不是合法的5位质数)。

输入

程序从标准输入读取数据:

  1. 第一行:质数的数字和(如1111)。
  2. 第二行:方阵左上角的数字(如11)。
    保证输入数据至少有一个解。

输出

程序向标准输出写入结果:

  • 每个解输出5行,每行对应一个5位质数(按行排列)。
  • 解的顺序按第一行质数升序排列,若相同则按第二行质数升序排列,以此类推。
  • 每个解之后输出一个空行(见样例)。

输入样例 1

11  
1  

输出样例 1

11351  
14033  
30323  
53201  
13313  

11351  
33203  
30323  
14033  
33311  

13313  
13043  
32303  
50231  
13331