洛谷 p1101 單詞方陣
題目描述:
給一n×n的字母方陣,內可能蘊含多個「yizhong」單詞。單詞在方陣中是沿著同一方向連續擺放的。擺放可沿著 8 個方向的任一方向,同一單詞擺放時不再改變方向,單詞與單詞之間可以交叉,因此有可能共用字母。輸出時,將不是單詞的字母用 *代替,以突出顯示單詞。
輸入:
第一行輸入乙個數n。(7≤n≤100)。
第二行開始輸入n×n的字母矩陣。
輸出:
突出顯示單詞的n×n矩陣。
例如:
;//定義八個方向
int dy=
;int n;
//定義方陣的大小
char s[maxn]
[maxn]
;//儲存方陣
int vis[maxn]
[maxn]
;//記錄是否可以組成yizhong,是的話為1,反之為0
string a=
"yizhong"
;int
dfs(
int x,
int y,
int t,
int k)
int xx=x+dx[k]
;int yy=y+dy[k];if
(xx>=
1&&yy>=
1&&xx<=n&&yy<=n&&s[xx]
[yy]
==a[t+1]
)//判定條件
}else
//不符合判定條件,說明這條路行不通
return0;
}int
main()
}for
(int i=
1;i<=n;i++
)return0;
}感覺自己還是太菜了,題目不難,就是卡了好長時
P1101 單詞方陣
給一nxn的字母方陣,內可能蘊含多個 yizhong 單詞。單詞在方陣中是沿著同一方向連續擺放的。擺放可沿著8個方向的任一方向,同一單詞擺放時不再改變方向,單詞與單詞之間 color red 可以 color 交叉,因此有可能共用字母。輸出時,將不是單詞的字母用 代替,以突出顯示單詞。例如 輸入 8...
P1101 單詞方陣
題目鏈結 題目描述 給一 n n 的字母方陣,內可能蘊含多個 yizhong 單詞。單詞在方陣中是沿著同一方向連續擺放的。擺放可沿著 8 個方向的任一方向,同一單詞擺放時不再改變方向,單詞與單詞之間可以交叉,因此有可能共用字母。輸出時,將不是單詞的字母用 代替,以突出顯示單詞。例如 輸入 8 輸出 ...
P1101 單詞方陣
給一 n times nn n 的字母方陣,內可能蘊含多個 yizhong 單詞。單詞在方陣中是沿著同一方向連續擺放的。擺放可沿著 88 個方向的任一方向,同一單詞擺放時不再改變方向,單詞與單詞之間可以交叉,因此有可能共用字母。輸出時,將不是單詞的字母用 代替,以突出顯示單詞。例如 輸入 8 輸出 ...