1.將所有滿足條件的3階幻方列舉出來
使用全排列函式next_permutation來實現,函式使用鏈結
2.遍歷所有3階幻方矩陣,統計與輸入矩陣可以匹配的個數
3.**
#include
#include
#include
#include
#include
#include
using
namespace std;
intmain()
;int squre[20]
[10];
//第二維用於儲存幻方矩陣
int count=0;
//三階幻方個數
//將所有的幻方矩陣列舉並儲存 do}
while
(next_permutation
(num+
1,num+10)
);//全排列函式
int sum=
0,flag;
for(
int i=
0; iif(temp==9)
}if(sum==1)
}if(sum>1)
cout<<
"too many"
}
藍橋杯 九宮幻方
3.九宮幻方 問題描述 小明最近在教鄰居家的小朋友小學奧數,而最近正好講述到了三階幻方這個部分。三階幻方指的是將1 9不重複的填入乙個3 3的矩陣當中,使得每一行 每一列和每一條對角線的和都是相同的。三階幻方又被稱作九宮格,在小學奧數里有一句非常有名的口訣 二四為肩,六八為足,左三右七,戴九履一,五...
藍橋杯 九宮幻方
注意 第一次寫dfs內用了二重迴圈,外層為位置,內層為未使用過的數字,存在先填充了後面又返回填充前面的情況,導致許多重複,按照樣例給出的得出5 120的結果.還是太菜了 後來參考了此部落格 應該是按位置dfs,已經存在資料的位置跳過,直接下乙個位置。此篇部落格僅供記錄錯誤 include using...
藍橋杯 九宮幻方
問題描述 小明最近在教鄰居家的小朋友小學奧數,而最近正好講述到了三階幻方這個部分,三階幻方指的是將1 9不重複的填入乙個3 3的矩陣當中,使得每一行 每一列和每一條對角線的和都是相同的。三階幻方又被稱作九宮格,在小學奧數里有一句非常有名的口訣 二四為肩,六八為足,左三右七,戴九履一,五居其中 通過這...