洛谷p1101單詞方陣

2021-10-02 21:08:50 字數 1127 閱讀 8245

寫過迷宮搜尋,這道題也是很容易上手,寫完才發現沒讀完題,每次都是乙個方向搜。。。。寫完搜尋我還納悶自己又寫錯了,結果發現只能乙個方向走到頭,這樣的話這道題迴圈做也是可以的,都不需要dfs了,不過寫一寫算熟悉了。

剛開始寫搜尋函式時,我乙個乙個字母的判斷,後來才發現自己太蠢,用陣列判斷即可,以後一定不會這樣了。

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace std;

char map[

105]

[105];

int n;

int vis[

105]

[105];

//記錄訪問過的點

int token[

105]

[105];

//記錄符合條件的點

int xx=

;//上下左右,左上,右上,左下右下

int yy=

;string yz =

"yizhong"

;struct point

;point p[10]

;void

dfs(

int x,

int y,

int t,

int dir)

return;}

int dx = x + xx[dir]

;int dy = y + yy[dir];if

(dx >

0&& dx <= n && dy >

0&& dy <= n &&

!vis[dx]

[dy])}

intmain()

}for

(int i =

1; i <= n; i++)}

}}for(

int i =

1; i <= n; i++

) cout << map[i]

[j];

} cout << endl;

}return0;

}

洛谷P1101單詞方陣

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

洛谷 P1101 單詞方陣

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

洛谷P1101 單詞方陣

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