原创 Codeforces 478A Initial Bet(數學水題)

題目:Initial Bet 題意:有5個人參與遊戲,每個人初始有b個硬幣,每一輪有一位玩家給另外一位玩家一個硬幣。給出5個人在結束時手上的金幣數,求出原始的b,如果不存在輸出-1。 不管怎麼轉移硬幣,硬幣的總數是不變的。所以全部硬幣數加

原创 Codeforces 478B Random Teams(組合數學)

題目:Random Teams 題意:將N個人分成M組,每組至少一人。在比賽結束時,同一組的人兩兩之間都會成爲朋友。不同分組的分組方案得到的朋友對數不同。 要問最少和最多各是多少。 對於一個有a個人的組,利用組合數我們可以知道這個組可以有

原创 HDU 5040 Instrusive(搜索,bfs,2014北京網絡賽1009)

題目:Instrusive 題意:給定一個地圖,要從'M'點到'T'點,每次可以往四個方向移動,平時每次移動1格花費1秒。但是由於地圖上有一些監控,如果當前所在格被監控看到,就必須躲在紙箱裏,躲在紙箱裏移動一格的耗時是3秒。而監控的可視範

原创 UVALive 5221 Page Hopping(最短路,弗洛伊德算法)

題目:Page Hopping 題意:給定一個有向圖,每條邊的長度都是1。求出每個點到其他點的最短路徑長度,然後加起來求平均數。 點不超過100個,直接上弗洛伊德算法。 就是輸入噁心了一點點。輸入都是成對輸入,代表一條有向邊。遇到兩個0表

原创 HDU 4718 The LCIS on the Tree(樹鏈剖分+線段樹)

題目:The LCIS on the Tree 題意:給定一棵樹,然後多個詢問,a, b,將樹上a到b的最短路徑上,結點的權值按順序寫下來,求出裏面最長的單調遞增連續子序列的長度。 先說這道題有個簡化的版本,用線段樹解決:LCIS 對於L

原创 HDU 5052 Yaoge’s maximum profit(樹鏈剖分+線段樹,2014上海網絡賽1011)

題目:Yaoge’s maximum profit 題意:一棵樹,每個結點有個初始的權值,點的權值代表在該點的雞肉的價格。 對於一個詢問X, Y, V。 找到X到Y的路徑,可以選擇在路徑上一個點I買雞肉,然後在點J賣掉,要求J必須在I之後

原创 HDU 5044 Tree(LCA ,2014上海網絡賽1003)

題目:Tree 題意:又是一棵樹,兩種操作: ADD1 U V K:將U到V結點路上的結點的權值都增加K; ADD2 U V K:將U到V結點路上的邊的權值都增加K; 最後輸出所有點和所有邊的權值。 我的做法是找到U, V的最近公共祖先X

原创 HDU 4119 Isabella's Message(字符串處理+矩陣旋轉)

題目:Isabella's Message 題意:看圖比較好理解吧。就是一個由小寫字母和空格組成的N*N的矩陣,還有一個部分挖空的紙。把後者疊到前者上面,將挖空那些地方對應的字符按順序寫下來,接着將紙順時針旋轉90度,重複讀。一共讀4次,

原创 HDU 4286 Data Handler(伸展樹)

題目:Data Handler 這道題據說用雙向鏈表模擬即可。當然用伸展樹寫純粹是在練習伸展樹。 好久沒碰伸展樹的後果就是這題寫了半天 T ^ T 題意:就是一個數列,然後兩個指針L和R,主要是幾種操作(以下是簡略說明,細節看題目吧):

原创 UVALive 5220 Internet Bandwidth(最大流,模板題)

題目:Internet Bandwidth 題意:其實就是給定一個無向圖,給出每條邊的最大流量,問從起點到終點的最大流量。 赤裸裸的最大流。 由於邊無向,添加的時候當成正反兩條有向邊添加即可。 然後就是跑一下最大流的模板。 PS:每組輸出

原创 POJ 3237 Tree(樹鏈剖分+線段樹)

題目:Tree 題意:給定一棵樹,樹邊有權值,然後三種操作: CHANGE i v:將編號爲i的邊的權值修改爲v; NEGATE a b:將樹上a到b的路徑經過的邊的權值全部取反,即改變它們的正負號; QUERY a b:詢問樹上a到b的

原创 HDU 2940 Hex Factorial(高精度,打表)

題目:Hex Factorial 題意:將N!轉成十六進制,除去前導0之後,問剩下的數字裏面有多少個0。 由於N<=100,所以可以直接寫個高精度預處理它,打表秒殺! 要注意數組還是要開大些,十六進制的100!長度也可達到130+。 另外

原创 BestCoder Round #10(解題報告)

題目:BestCoder Round #10 HDU 5018 Revenge of Fibonacci 題意:給定a, b, c,其中a, b作爲定義的斐波那契數列的前兩項,求問c是否在這樣的數列裏面出現。 由於a,b,c都不超過10^

原创 HDU 4992 Primitive Roots(求出n的所有原根)

題目:Primitive Roots 題意:求出n的所有原根,不存在原根輸出-1。 原根的定義題目已經給出,對於n的原根x,則滿足x的y次冪模n等於1的最小y是n的歐拉函數值phi(n),也就是小於等於n且與n互質的個數。 官方的題解裏面

原创 HDU 3957 Street Fighter(DLX搜索)

題目:Street Fighter 題意:以街頭霸王爲背景的一個題。有N個人物,每個人物有一到兩種模式,每種模式有他特定可以擊敗的一些特定模式的人物。 現在要選擇一些人物,同時要確定他們的模式,使得這些人能夠擊敗剩下其他人的所有模式。 求