【算法之美-经典问题】九宫格问题
题目
九宫格是一种古老的数学游戏,它要求在3X3的矩阵中,填入1-9这9个数字,并且横向、纵向、斜向上的3个数字之和皆相等。类似问题在数学上被称为幻方。现将九宫格推广到5X5,7X7等幻方问题。根据求解口诀““一居上行正中央,依次斜填切莫忘;上出框时向下放,右出框时向左放;排重便在下格填,右上排重一个样”。所谓一居上行正中央说的是1在第一行的正中,依次 斜填切莫忘说的是一直向右上方填, 上出框时往下填是斜填到方框上面去了,就放在这竖行的最下边, 右出框时左边放是说斜填到右框外面,就在横行左边放, 排重便在下格填是斜填上面有数字了,就在自己的下面放, 右上排重一个样就是右上格上面没有格子了,就和排重一样,放在自己的下面。
根据一个用户输入的奇数,作为幻方矩阵的大小输出一个对应的矩阵。
解答
#include <iostream>
#include <memory>
#include <iomanip>
using namespace std;
int main(){
int<