CSU2087 迭代深搜dfs

2021-08-27 20:39:35 字數 446 閱讀 4986

思路:dfs,用vowel記錄連續的母音字母,用consonant記錄連續的子音字母,深搜字串的位置(str[i]的i),用cnt存悲劇詞的個數,最後用t判斷字串中是否含'l'。

#include#include#include#include#includeusing namespace std;

string str;

long long int num;

void dfs(int i,long long int cnt,int t,int vowel,int consonant)

return ;

} if(str[i]!='_')

else if(str[i]=='l')

else

} else

}int main()

return 0;

}

dfs 深搜 模板

關於深度優先搜尋的效率問題,有多種解決方法。最具有通用性的是剪枝 prunning 也就是去除沒有用的搜尋分支。有可行性剪枝和最優性剪枝兩種。int mx 4 向上下左右四個方向移動 0,1 0,1 1,0 1,0 int my 4 bool check int x,int y 判斷是否滿足條件的子...

深搜DFS和廣搜BFS

一般來說,廣搜常用於找單一的最短路線,或者是規模小的路徑搜尋,它的特點是 搜到就是最優解 而深搜用於找多個解或者是 步數已知 好比3步就必需達到前提 的標題,它的空間效率高,然則找到的不必定是最優解,必需記實並完成全數搜尋,故一般情況下,深搜需要很是高效的剪枝 優化 像搜尋最短路徑這些的很顯著是用廣...

DFS 深搜 演算法解析

圖是一種靈活的資料結構,一般作為一種模型用來定義物件之間的關係或聯絡。物件由頂點 v 表示,而物件之間的關係或者關聯則通過圖的邊 e 來表示。圖可以分為有向圖和無向圖,一般用g v,e 來表示圖。經常用鄰接矩陣或者鄰接表來描述一副圖。在圖的基本演算法中,最初需要接觸的就是圖的遍歷演算法,根據訪問節點...