搜尋 深搜 洛谷 P1101 單詞方陣

2022-07-18 18:39:17 字數 861 閱讀 2903

這是本蒟蒻的第一篇題解

不喜勿噴

給定乙個矩陣,有上下左右斜向共八個方向,要求找出所有的從每乙個「y」出發,往某個方向遍歷,直到連續地遍歷完「yizhong」每個字母的路徑。

簡單的搜尋題。

**如下:

1 #include2

using

namespace

std;

3char a[105][105],b[105][105],yz[10]=;

4intn;5

int dx[12]=;//

表示八個方向

6int dy[12]=;

7int dfs(int x,int y,int num,int

direct)

16if(!flag&&a[x][y]=='

y') b[x][y]='

c'; //

因為這個函式是從y的下乙個字母開始的,所以特判 y

17return

flag;18}

19int

main()

26for(int i=1;i<=n;i++)

27for(int j=1;j<=n;j++)

28if(a[i][j]=='

y')//

從 y開始dfs

29for(int k=1;k<=8;k++)//

八個方向,都是單調方向,所以不在dfs()中迴圈

30 dfs(i,j,1,k);//

k表示方向,1表示當前尋找的是"yizhong"中的第幾個字母

31for(int i=1;i<=n;i++)

37return0;

38 }

洛谷P1101 單詞方陣 深搜

題目描述 給一n n的字母方陣,內可能蘊含多個 yizhong 單詞。單詞在方陣中是沿著同一方向連續擺放的。擺放可沿著 8 個方向的任一方向,同一單詞擺放時不再改變方向,單詞與單詞之間可以交叉,因此有可能共用字母。輸出時,將不是單詞的字母用 代替,以突出顯示單詞。例如 輸入 輸出 8 qyizhon...

洛谷P1101單詞方陣

整體的思路 在矩陣中找到 y 然後對 y 進行八個方向的搜尋 用cmp陣列存 yizhong 在每乙個方向中和cmp進行比較,若存在任意乙個不同,則處理下乙個方向。include includeusing namespace std const int dx 方向陣列 const int dy co...

洛谷 P1101 單詞方陣

題目描述 給一nxn的字母方陣,內可能蘊含多個 yizhong 單詞。單詞在方陣中是沿著同一方向連續擺放的。擺放可沿著8個方向的任一方向,同一單詞擺放時不再改變方向,單詞與單詞之間 color red 可以 color 交叉,因此有可能共用字母。輸出時,將不是單詞的字母用 代替,以突出顯示單詞。例如...