方格填數 藍橋杯

2021-09-11 20:16:30 字數 680 閱讀 3649

如下的10個格仔

+--+--+--+

|  |  |  |

+--+--+--+--+

|  |  |  |  |

+--+--+--+--+

|  |  |  |

+--+--+--+

(如果顯示有問題,也可以參看【圖1.jpg】)

填入0~9的數字。要求:連續的兩個數字不能相鄰。

(左右、上下、對角都算相鄰)

一共有多少種可能的填數方案?

請填寫表示方案數目的整數。

注意:你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。

解:可以直接用全排列的方法解決,但是用dfs 方法應該複雜度更簡單,慚愧竟然沒有直接寫出來,還是一段時間沒做就手生了。

#include using namespace std;

int g[3][4];

int ans=0;

int num[10]=;

int dir[4][2]=,,,};

bool check(int k,int m,int n)

} }return true;

}void dfs(int i,int j)

if(j>=4)

else}}

}int main()

藍橋杯 方格填數

方格填數 如下的10個格仔 如果顯示有問題,也可以參看 圖1.jpg 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。include include in...

藍橋杯 方格填數

方格填數 如下的10個格仔 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?答案 解題思路 題目應該是要求0 9是不重複的。那麼我想通過a 10 將0 9進行全排列,然後將值賦給二維陣列m 3 4 從而m記錄每個方格的數字。我只要寫判斷語句就行了...

藍橋杯 方格填數

方格填數 如下的10個格仔 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。全排列函式呼叫next permutation f,f 10 直接暴力 在這裡...