原创 hdu2571(數塔問題)

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=2571 題目解析:數塔問題,從前往後dp,從後往前dp均可以,但是要注意的是邊界要初始化爲無窮大,不能初始化爲0,因爲有負數存在。 代碼如下:

原创 hdu1072Nightmare(廣搜)

題目鏈接:click~ 題目解析:仍然是走過的點可以再走,所以標記數組vis[]記錄的是經過該點的最大(而不是最小)的爆炸時間。 代碼如下; #include<cstdio> #include<cstring> #include<que

原创 hdu1176免費的餡餅

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=1176 代碼如下; #include<cstdio> #include<cstring> #include<algorithm> using

原创 nyoj16矩形嵌套(DAG上的動態規劃)

題目鏈接:http://acm.nyist.net/JudgeOnline/problem.php?pid=16 代碼如下: 01.#include<cstdio> 02.#include<cstring> 03.#include

原创 hdu1978How many ways(記憶化搜索)(基於深搜)

題目鏈接:click here~ 題目解析:記憶化搜索:即記錄下已經搜索過的點,當再次搜到這個點的時候,直接返回值,不需要再深搜下去(因爲此點到終點的方式數已經計算出來了)。 代碼如下: #include<cstdio> #includ

原创 nyoj37迴文字符串

題目鏈接:http://acm.nyist.net/JudgeOnline/problem.php?pid=37 代碼如下: 01.#include<cstdio> 02.#include<cstring> 03.#incl

原创 nyoj214單調遞增子序列(二)

題目鏈接:http://acm.nyist.net/JudgeOnline/problem.php?pid=214 題目解析:此題可以dp解決,但是數據大時會超時,也可以用另一種方法解決。 代碼如下: 超時代碼: 01.#includ

原创 hdu1572(下沙小面的(2))(深搜找最短路)

題目鏈接:click here~ 題目解析:從0結點開始,深搜找最短路,深搜也即枚舉全排列,關鍵是在遞歸(保存所有的狀態)中的每一層如果所有的頂點個數等於總頂點個數時,更新此時的最小值。 代碼如下: #include<cstdio> #

原创 hdu2616Kill the monster(深搜)

題目鏈接:click here~ 題目解析;深搜枚舉全排列,如果一層中的s值小於或等於0時更新此時的最小值並且函數返回,不再深搜下去。 代碼如下: #include<cstdio> #include<cstring> #include<

原创 nyoj104最大和

題目鏈接:http://acm.nyist.net/JudgeOnline/problem.php?pid=104 題目解析:,總體思路是枚舉所有的子矩陣,只是中間處理的時候要先預處理出前綴和,首先預處理出前綴和,然後依次枚舉所有的情況,

原创 hdu1312Red and Black(深搜)

題目鏈接:click here~ 題目解析:一般的深搜,回溯時不用取消標記。 代碼如下: #include<cstdio> #include<cstring> char map[21][21]; int vis[21][21]; int

原创 hdu1003Max Sum

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 題目解析:對於每一個位置的數字,如果之前的子串和小於0,說明之前的子串對之後的結果沒有價值,所以一個新的子串從當前位置開始。 代碼如下

原创 hdu1548A strange lift

題目鏈接:click here~ 題目解析:一般的廣搜,枚舉所有的狀態就可以了。 代碼如下: #include<stdio.h> #include<string.h> #include<queue> using namespace s

原创 hdu1208Pascal's Travels

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=1208 代碼如下; #include<iostream> #include<cstdio> #include<cstring> #includ

原创 poj1321棋盤問題(深搜)

題目鏈接:click here~ 題目解析: 類似於八皇后問題,逐行進行搜索,然後要判斷不能在同一列中,由於k<n,所以在原先八皇后問題的基礎之上也即for循環之後再加一個dfs(). 代碼如下: #include<cstdio> #i