两点(51nod 深搜)
生活随笔
收集整理的這篇文章主要介紹了
两点(51nod 深搜)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
福克斯在玩一款手機解迷游戲,這個游戲叫做”兩點”。基礎級別的時候是在一個n×m單元上玩的。像這樣:
每一個單元有包含一個有色點。我們將用不同的大寫字母來表示不同的顏色。
這個游戲的關鍵是要找出一個包含同一顏色的環。看上圖中4個藍點,形成了一個環。一般的,我們將一個序列 d1,d2,…,dk 看成一個環,當且僅當它符合下列條件時:
這k個點不一樣,即當 i≠j時, di 和 dj不同。
k至少是4。
所有的點是同一種顏色。
對于所有的 1≤i≤k-1: di 和 di+1 是相鄰的。還有 dk 和 d1 也應該相鄰。單元 x 和單元 y 是相鄰的當且僅當他們有公共邊。
當給出一幅格點時,請確定里面是否有環。
Input
單組測試數據。
第一行包含兩個整數n和m (2≤n,m≤50):板子的行和列。
接下來n行,每行包含一個有m個字母的串,表示當前行每一個點的顏色。每一個字母都是大寫字母。
Output
如果有環輸出Yes,否則輸出No。
Sample Input
3 4
AAAA
ABCA
AAAA
3 4
AAAA
ABCA
AADA
Sample Output
Yes
No
深搜題目,想明白就好了。在搜索的過程中,不能往回搜索,搜過的就標記為1,當搜索的過程中遇見1就返回yes,否則就返回no。
代碼如下:
努力加油a啊,(o)/~
總結
以上是生活随笔為你收集整理的两点(51nod 深搜)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 和为K的组合(01背包)
- 下一篇: Maximum Subrectangle