原创 HDU-2102 A計劃 BFS

#include <cstdio> #include <cstdlib> #include <cstring> #include <queue> using namespace std; char map[2][15][15], h

原创 UVA11572

#include<iostream> #include<cstring> #include<cstdio> #include<string> #include<algorithm> #include<queue> #include<ma

原创 CSU1224古怪的象棋(典型bfs)

 思路: 經典bfs,無腦讓馬走八個方向就行,注意別出邊界。 #include<stdio.h> #include<iostream> #include<algorithm> #include<cstring> #include<cst

原创 CodeForces - 616C詳解(很有意思的bfs)

 思路: 很有意思的一道題,首先如果暴力遍歷"*",bfs(),運行到第11個測試點就超時了,因爲點比較多,是1000*1000的格子,每次bfs一個點要進行4*10^6次運算(4是因爲要上下左右找一次)。也就是最大運算是10^6*4*1

原创 2031: Barareh on Fire(預處理+bfs)

 思路: 兩次BFS 一次處理火燒,得到每個點着火的時間,第二次bfs處理人的逃跑。 注意,像這類有多組數據輸入的時候一定要注意初始化條件,比如幾個vis數組要置零,隊列一定要記得清空。 #include<iostream> #incl

原创 CSU - 1726 優先隊列bfs

#include<cstdio> #include<iostream> #include<cmath> #include<cstring> #include<queue> using namespace std; int sx,sy,

原创 CSU1232懶漢的旅行

  #include <iostream> #include <cstdio> #include <cstring> #include <vector> #include <string> #include <stack> #inclu

原创 HDU - 1429勝利大逃亡(續)bfs與二進制按位操作

 思路: 有點像我們以前玩的魔塔,拿小寫字母表示鑰匙,去開大寫字母的門,如果用模板的bfs去寫,將vis設爲二維數組,記錄地圖上的二維座標,來標記走過的點,那麼這樣很明顯會失敗,因爲勇士是可能要拿鑰匙後,走之前標記過的回頭路,所以我們要用

原创 HDU - 2717

  #include<iostream> #include<cstdlib> #include<cstdio> #include<cmath> #include<cstring> #include<fstream> #include<q

原创 POJ1654

 思路: 凸包算法,Andrew,坑的一點是int會爆,要用longlong,而且注意沒有小數時輸出整數。 ps:這個題目其實有點問題,因爲沒有說明它是凸多邊形,如果是凹多邊形這麼做是無意義的(開始我以爲要考慮凹多邊形,把算法弄得超級複雜

原创 POJ1269解題報告

 利用叉乘:https://blog.csdn.net/zxy_snow/article/details/6341282 #include<cstdio> #include<cstring> #include<cmath> #inclu

原创 UVA 10652 Board Wrapping 凸包

 題意: 求閉包的Andrew算法,在劉汝佳的 算法競賽訓練指南的272頁有講。 #include<iostream> #include<cstring> #include<cmath> #include<vector> #includ

原创 ZOJ - 1709 bfs

經典挖油的BFS,發現一個油田如果它合規,就把它放入隊列中,然後繼續搜尋下去。最後需要進行幾次BFS(換句話說,中斷過幾次bfs)就說明有幾個大油礦。 #include<iostream> #include<cstring> #incl

原创 POJ1066向量叉乘法解題報告

首先你要知道如何判斷兩條線段相交:https://blog.csdn.net/qq826309057/article/details/70942061  思路: 枚舉外牆上每道內牆的兩個端點和p(寶物)的連線這條線段和內牆的交點的次數最小

原创 POJ - 3126

 典型的bfs,直接暴力枚舉四位上的數字。 #include<iostream> #include<cstring> #include<cstdio> #include<queue> #include<map> #include<set