原创 UVA 216 Getting in Line dfs
點擊打開題目鏈接 平面上有一些點,求一筆將所有點連起來的最短距離(注意每次連都要加上16) 由於最多隻有8個點,暴力全排列即可 方法一:dfs #include <cstdio> #include <iostream> #include
原创 HDU 5676 ztr loves lucky numbers dfs+二分
ztr loves lucky numbers Time Limit: 2000/1000
原创 HDU 2191 悼念512汶川大地震遇難同胞——珍惜現在,感恩生活 多重揹包
悼念512汶川大地震遇難同胞——珍惜現在,感恩生活 Time Limit: 1000/1000 MS
原创 UVA 11404 Palindromic Subsequence LCS
點擊打開題目鏈接 給一個由小寫字母組成的字符串,輸出它的最長迴文串,如果有多個結果,輸出字典序最小的。 正序和逆序求最長公共子序列,不過要字典序最小,這裏用結構體(第二次用結構體做dp)。 dp[ i ][ j ].len 表示 ch1
原创 HDU 2818 Building Block 加權並查集
Building Block Time Limit: 2000/1000 MS (Java/Ot
原创 UVA 10652 Board Wrapping 凸包
點擊打開題目鏈接 #include <cstdio> #include <cmath> #include <vector> #include <algorithm> #include <cstring> #include <iost
原创 UVA 10806 Dijkstra, Dijkstra. spfa
點擊打開題目鏈接 從 1 到 n 求兩次最短路,每條邊只能走一次 這裏用兩次spfa算法求,第一次求後將路徑上的邊更新 假如經過了邊 (u,v) 則先將 w[ v ][ u ] 修改爲 -w[ u ][ v ] 再將 w[ u ][
原创 UVA 539 The Settlers of Catan dfs無向圖最長路
點擊打開題目鏈接 給一些點和連接它們的一些邊,求最長路徑(最多訪問邊的條數,每個點可以多次訪問,每條邊只能訪問一次) 我們用 vector 可變長數組保存這些邊,dfs 最長路徑 #include <cstdio> #include <
原创 POJ 2299 Ultra-QuickSort 歸併排序
Ultra-QuickSort Time Limit: 7000MS Memory Limit: 65536K Total Submissions: 53029 Accepted: 19455 Descrip
原创 POJ 3468 A Simple Problem with Integers 線段樹 區間修改
A Simple Problem with Integers Time Limit: 5000MS Memory Limit: 131072K Total Submissions: 89433 Accepted: 2782
原创 POJ 1062 昂貴的聘禮 最短路
昂貴的聘禮 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 43878 Accepted: 12875 Description 年輕的探險家來到了一
原创 UVA 11437 Triangle Fun 幾何基礎
點擊打開題目鏈接 幾何基礎 #include <cstdio> #include <cmath> #include <iostream> using namespace std; struct Point //定義點 {
原创 POJ 3356 AGTC 最短編輯距離
AGTC Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 12261 Accepted: 4602 Description Let x and y
原创 POJ 1787 Change 多重|完全揹包
Charlie's Change Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 3895 Accepted: 1183 Description C
原创 藍橋杯 歷屆試題 城市建設 最小生成樹
點擊打開題目鏈接 將河作爲點0處理,讓碼頭與其相連。 首先判斷不建碼頭是否可以生成最小生成樹 最小生成樹用kruskal算法,若對於代價<0的邊,直接加入,最小值可以更小 若可以:Min(最小生成樹(不建碼頭),最小生成樹(建碼頭));