如圖,如下的10個格仔,填入0~9的數字。要求:連續的兩個數字不能相鄰。
(左右、上下、對角都算相鄰)一共有多少種可能的填數方案?
請填寫表示方案數目的整數。
看到這題第乙個想到的方法就是回溯,就很像八皇后,能填進去就填,填不進去就看下乙個位置(我做的是0---9不重複使用)
我感覺這題麻煩就在判斷上
1.首先要判斷乙個點的8個方向相減的絕對值是否為1,為1不能填入,不為1判斷是否使用過這個數,沒使用填入 進行下乙個位置
2.如果填入的位置到達最後一列應該換行看下一行的第乙個位置進行判斷
3.填到最後每乙個情況總sum++就行了
上**
#includeusing namespace std;
int a[3][4];
int num = 0;
int v[10] = ;
int pd(int k, int i, int j)
void f(int i, int j)
for (int k = 0; k <= 9; k++)
}}int main()
結果應該是:1580
理解了八皇后這個典型的回溯,這些都不太麻煩了
642179511
)
2023年藍橋杯 A組 方格填數(dfs)
題目分析 有兩種思路,一種是從左上角第乙個節點開始,向下面和右面依次遍歷,每次填乙個數,並且判斷是否和四周的數相鄰。還有一種是直接全排列0 9,然後從左到右,從上到下依次填入,之後判斷是否滿足相鄰的格仔數不相鄰的條件,如果滿足則方案數 1.全排列用next permutation函式即可。inclu...
方格填數,藍橋杯2023年第6題
方格填數 如下的10個格仔 如果顯示有問題,也可以參看 圖1.jpg 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。小歧異 不知道0 9 可不可以重複使...
方格填數 2016藍橋杯C 題解
資源約定 峰值記憶體消耗 含虛擬機器 256m cpu消耗 1000ms 如下圖 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。請嚴格按要求輸出,不要畫...