原创 HDU 3896 Greast TC 倍增lca,dfn,low,fin的運用
一開始還以爲要用雙聯通求縮點,,寫瘋了,,後面看了別人的題解,真是服了,,又寫了好久,,因爲不把森林的情況考慮,想水過,因爲倍增時順序搞反了,等等,,最終迎來艱難的AC,深深地明白自己還太弱了,如果是比賽怎麼搞!! 思路:對於第一種情況,
原创 POJ 3264 RMQ模板
#include <iostream> #include <cstdio> #include <cstring> #include <vecto
原创 HDU 2888 二維RMQ 模板
#include <iostream> #include <cstdio> #include <cstring> #include <vector> #include <cmath> using namespace std ; cons
原创 hihocoder 1077 修改點查詢區間
一道比較簡單的線段樹,不過寫了好長時間,build時 lson 和 rson 忘了賦值,沒有更新num ,看來水題也是要認真寫的 用了hash來記錄沒一點在樹中對應的節點,有葉子節點向根節點更新 #include <iostream>
原创 HDU 不要62 數位DP
這道題目,雖然不是第一道數位dp,但搞了好幾天,思路倒是簡單,主要是再求一個數下有多少滿足要求的判斷太多了,昨天晚上已經過了很多數據,知道還有些判斷有問題,今天早上改 了一下,AC了; 思路:1,先求出 dp[len][0] (代表長度爲
原创 求一個數因數個數,因數和
1,給一個數求它所有因數的和。 公式:每個質因子從0次方加到它的最高次方,然後連乘。 比如:求18 ,(2^0 + 2)*(3^0+3+3^2) = 3*13 = 39 2,給一個數求它所有因數的個數 公式:每個質因子的最高次方+1的乘
原创 POJ 1523 割點
比較裸的割點,多了個求割點的度,注意輸入輸出格式 #include <iostream> #include <cstdio> #include <cstring> #include <vector> #include <casser
原创 HDU 2586 How far away LCA倍增模板
題目很簡單,沒有考什麼思維;今天AC的時候發現以前我學lca的時候就在搞這題,而且已經WA,TLE,MLE,RE等等各種14發,,, 思路:額,,這尼瑪還要寫思路???? 模板:看代碼 在dfs的時候maxh忘了更新了,居然TLE,,,添
原创 關於生成隨機測試數據
被poj 2155坑了一天多,最後寫了個隨機測試數據生成,終於找到的錯誤,爲了以後寫測試數據不在重新學習,在此備忘一下. 1,頭文件包含<cstdlib>,因爲rand() , srand() 需要 ; <ctime> ,因爲time()
原创 HDU 5124 轉化爲最大前綴和
這道題是看了 BestCoder 的題解才AC的,,雖然自己的做法沒有它快,但不知道錯在何處 ; 思路:對於每一條 line ,令 xi 的權值爲1 , yi+1 的權值爲 -1 , 對所有的節點排序, 求最大前綴和 ; #include
原创 POJ 3368 經典RMQ
下午開始寫,編寫邊看動漫,果然寫挫了,,晚上來debug,,, 題意:給一段不下降序列,,,求,l到r區間出現出現數字最多的數字的次數 思路:1,把相同的作爲一段,num表示該下標所在的段,left表示該段最左邊的下標,right表示該段
原创 ZOJ 3795 Grouping 強聯通 最長路徑
是道好題 ,, 思路:1,首先,凡是roott的子節點均不能與與它在一個group中,所以想到了拓撲排序,求有多少層,但這樣是錯的,因爲縮點裏的點是不能在一個group中; 2,然後,從root到葉子節點的路徑上都不能在一起,這就相當於
原创 POJ 2029 水DP
看到是二維線段樹題,趕腳和POJ 1050很像,一看poj 1050 比這還難,這題用1050方法代碼要複雜一點,注意輸入矩陣的格式 #include <iostream> #include <cstdio> #include <cstr
原创 POJ 2155 二維線段樹 修改區間查詢點
這道線段樹,我用的是完全暴力的方式,中間沒有優化; 說實話,簡直坑爹,對於n長度的區間的線段樹 ,它的節點數目爲N左右,第二維開N的大小居然過不了 ,真是了,檢查了好久好久,本來昨天就該過的,真坑爹!!!! 方法:二維
原创 POJ 3160 Father Christmas flymouse 強聯通
說實話,真心沒看懂題目是什麼意思,在搜了一下後終於搞懂了,就是給一個無向圖,每個點有一個權(可爲負),讓你仍選一條路徑走,去訪問別的點,到達該點的時候可以選擇得到權或者放棄,求使得獲得的權最大的值 ;趕腳有一點樹形DP在裏面; 思路:強聯