原创 BZOJ_1012_[JSOI2008]最大數maxnumber_暴力?(線段樹)

第一眼看到這題大家都覺得是一道線段樹的水題,然而它卻是一道暴力完美解決的超級大水題。估計難度在NOIP pj第一題左右… … 去看了看數據…沒什麼感覺…… 再看看別人的代碼長度… 這一定不是線段樹!!!! 也有人考慮用單調隊列

原创 POJ_2387_Til the Cows Come Home(USACO 2004 November)_最短路徑

這是最簡單的最短路徑裸題之一…建議初學者做或者用來測速… 題目的意思是給一個有 T 條雙向邊、N 個點的圖,問從1號結點到 N 號結點最短路徑長度…赤果果的一道題… 用SPFA解決: #include<iostream> #include

原创 POJ_1056_IMMEDIATE DECODABILITY_Trie樹

又是一道簡單的字典樹問題。題目意思是給多組由9結尾的二進制數(9不包括在內),分別詢問這每一組二進制數中是否存在一個數爲另一個數的前綴。若沒有,則可以快速解碼,若有,則不能快速解碼。對於每一組數據輸出結果。 如題,二進制的話僅有0和1兩個

原创 BZOJ_1491_[NOI2007]社交網絡_最短路徑

顯然這是一道要求多源最短路的題目,數據範圍很小,目測用弗洛伊德算法。由題意,先求出各個點之間的最短路徑,同時利用乘法原理,計算出由 i 到 j 之間的最短路徑個數。如果又發現了一條最短路,由乘法原理計算增加的路徑個數再加上即可。 我寫的代

原创 POJ_3630_Phone List_Trie樹

題目大意是給定t組數據,每組中有n個數字構成的字符串電話號碼,要求對每一組數據判斷是否存在一個電話號碼爲另一個的前綴,如果有,則這一組數據不合要求,輸出”NO”,若是沒有,就是”YES”。 一眼就看出來這道題是一個裸的trie樹問題,需要

原创 POJ_1273_Drainage Ditches(USACO 93)_最大流

此題是最大流的裸題,適合網絡流初學者練習。 Edmonds_Karp 增廣路徑算法運行過程: 如果能找到新的增廣路徑則: 用廣度優先搜索,不斷地找邊最少的增廣路徑,同時記錄每個點的前驅; 之後求出本次增廣路徑的流量大小(即爲路徑中

原创 POJ_1258_Agri-Net(USACO 102)_最小生成樹

此題爲一道簡單的最小生成樹問題,輸入一個 n*n 的鄰接矩陣,然後在圖上找最小生成樹即可。 我用Prim算法解的此題,算法思路也很簡單,就是貪心。首先先隨便把一個點加入到樹中,然後不斷地由此擴展其他的點,加邊的過程就是貪心,即每次加入樹的

原创 HDUOJ_1754_I Hate It_線段樹

這也是一道基礎的線段樹問題,我依然用堆式線段樹解決的。 這道題如果一開始建一棵空樹之後再向內插入值的話會超時,因此當建樹到葉子節點時要將成績賦給它。 本題要用線段樹維護的是區間最大值,因此在遞歸插入元素或修改元素時,若是二分查找到葉子節點

原创 POJ_1125_Stockbroker Grapevine_最短路徑

題目大意是有多組數據,每一組第一個數 n 表示一共有幾個股票經紀人,然後接下來的 n 行每一行表示第 ni 個經紀人與 mi 個其他人有聯繫,之後是 mi 組其他經紀人的編號和聯繫消耗的時間。並且求出這個最短的時間。 這題數據範圍很小,經

原创 POJ_1781_In Danger_約瑟夫問題

這道題是約瑟夫問題的變形,大意就是給定很多人,圍成一個環,從一開始數,每次殺死第三人,事實上按數據是每數到2就殺死當前的人。第一個樣例中,一共五人,先殺死2號,之後是4號,然後1號,最後殺死5號,於是3號最後活下來了。 輸入數據,讀爲字符

原创 POJ_1502_MPI Maelstrom_最短路徑

題目的大意爲給定一個 n*n 的鄰接矩陣下三角部分,表示了一個計算機網絡中各個處理器交流所需的時間,如果是 x 的話就代表兩個處理器之間沒有直接聯繫的路徑。注意:矩陣的對角線上的數字均爲零(即自己到自己不耗費時間),因此未給出,只給出了下