3 23 方格填數 深度搜尋

2021-08-17 11:21:48 字數 749 閱讀 6399

方格填數

如下的10個格仔

+–+–+–+

| | | |

+–+–+–+–+

| | | | |

+–+–+–+–+

| | | |

+–+–+–+

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

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

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

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

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

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

#include

#include

using

namespace

std;

int ans=0;

int a[5][6]=;

int vis[10]=;

int b[10][2]=;//便於找到當前的位置

void f(int s)

vis[i]=1;

a[x][y]=i;

f(s+1);

vis[i]=0;

a[x][y]=100;}}

}int main()

}f(0);

cout

<1、為了減少邊界情況的討論,對方格周圍的那些地方(a陣列中的邊界)全賦值為100,這樣不考慮的那些格仔肯定不會與之相鄰;

2、遞迴函式為了方便確定下乙個位置的座標,用乙個陣列b記錄位置。

藍橋杯 2016 3 方格填數

如下的10個格仔 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?dfs就好 但是,我加了乙個list的優化 更要命的是 這個list是用stl實現的 好吧,其實是我已經懶到手寫鍊錶都不會了 下面普及list的用法 list.erase it 這...

方格填數 (搜尋)

時間限制 1 sec 記憶體限制 128 mb 提交 60 解決 26 提交 狀態 討論版 如上面的10個格仔,填入0 9的數字,不能重複 原先已經填了一部分數字 要求 連續的兩個數字不能相鄰 左右,上下,對角都算相鄰 例如 數字0和1不能放在一起。問 一共有多少種可能的填數方案?輸入多組測試資料。...

第七屆 6 方格填數

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