原创 POJ 3349 Snowflake Snow Snowflakes ( HASH+最小表示判同構 )

大致題意: 1e5個6個元素的數組,問是否有兩個數組是同構的 思路: 對每個數組HASH後插入,用鏈表遇到地址衝突的時候用最小表示法判同構近似O(n) Snowflake Snow Snowflakes Time Limi

原创 51nod 1130 N的階乘的長度(階乘近似公式--斯特林公式)

大致題意: 求n!有多少位,n<= 1e9 ,1000組數據 大致思路: 顯然是企圖求 lg(n!)+1 向下取整 顯然求lg(n!) 展開的複雜度是On的 但是,他是求多少位,有n!的近似公式斯特林公式(Stirling's ap

原创 Codeforces GYM 100651 D I Conduit! (水計算幾何)

大致題意:  1e3 個線段,畫在一張紙上,求可以看成多少個線段,( 兩個線段部分重疊,或收尾相接將看成一個線段) 思路: 在同一一條直線上的兩條線段: 他們斜率相等,他們在Y軸或X軸上的投影點相等。然後根據這兩個排下序就可以搞出來

原创 Codeforces 584E. Anton and Ira (排列好題)

大致題意: n <= 2000,有一1~n的排列p和s,對pi和pj交換產生的代價是 | i - j | , 問最少需要多少代價使,排列p變成排列s,輸出解 思路: 可以先把s映射成1...n的規則排列,然後再把p序列對應映射成新的序列(

原创 LA 4123 Glenbow Museum (組合數)

題意:對於一個邊平行於座標軸的多邊形,我們可以用一個由R和O組成的序列來描述它:從某個頂點開始按照逆時針順序走,碰到一個90°的內角記R;碰到一個270°的內角記O。這樣的序列稱爲角度序列。定義星型多邊形爲多邊形中存在一個點可以看到多邊形

原创 Light OJ 1061 - N Queen Again(搜索+狀壓DP)

大致題意: 8*8的棋盤,已知八個皇后的位置,問最少移動多少次,可以讓八個皇后不互相攻擊。(同行,同列,同斜線視爲互相攻擊) 思路: 易知八皇后不攻擊一共有92種,dfs出這92種,然後對於每種狀壓求出最少需要移動多少次 複雜度: O(

原创 Light OJ 1013 - Love Calculator(LCS+ 計方案數)

大致題意:有a,b字符串,求最短的字符串使a,b均爲它的子序列,求這種最短字符串有多少個 思路: 顯然最短長度就是|a|+|b|- LCS 同樣dp兩遍,第一遍求LCS,第二遍在LCS的轉以上dp出方案數: 如果a[i] == b[i]

原创 HDU 5430 Reflect (歐拉函數) (類似UVA 12493 Stars)

問題描述 從鏡面材質的圓上一點發出一道光線反射NN次後首次回到起點。 問本質不同的發射的方案數。 輸入描述 第一行一個整數T,表示數據組數。T \leq 10T≤10 對於每一個組,共一行,包含一個整數,表示正整數N(1 \leq

原创 Codeforces Round #337 (Div. 2) E. Alphabet Permutations (線段樹lazy 或 set)

大致題意: 一個2e5的字符串STR,最多包含K個字符(K < 10) , 有Q個操作(<2e4) 。 1. 把字符串[L, R]的字符修改成x 2. 給一個K個字符的某個排列s,詢問最少重複次數的s連接而成的長串的子序列包含STR 思路

原创 UVA10253 - Series-Parallel Networks(樹形DP+(組合) _ 建模很好)(好題)

題目鏈接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1194 大致題意: 給你n條邊,問

原创 Single Round Match 671 Round 1 - Division II, Level Three(狀壓DP)(略難)

題目鏈接:http://community.topcoder.com/stat?c=problem_statement&pm=14070&rd=16551 大致題意: 描述太麻煩。摘取關鍵題意: When pushing the tr

原创 Codeforces Round #327 (Div. 1) D. Top Secret Task(DP)

大致題意: 題意很簡單,就是n個數,求最多兩兩交換S次,使前K個數的和最小 n <= 150, s = 1e9 思路: 顯然s >= n * n / 2 時總能把前K小的數交換到前K個位置 而且交換不交叉時是最優的,比如Ak 與 A(

原创 HDU 5071 Chat(大模擬)

是2014鞍山賽區的一道銀牌題。有這幾個坑點: 1.刪掉某個窗口時,若此窗口時alwaystop,需要把alwaystop清零,還要把cnt清零,因爲下次可能還打開此窗口和她聊天 2.最後說Bey的時候,先對alwaystop說Bey,

原创 LightOJ 1021 - Painful Bases(狀壓DP)

大致題意:求 ’0‘ ~ ‘F' 的排序,組成16進制數,能被K整除,求排列的方案數 思路: 基礎狀壓,注意從低位到高位DP,因爲全是F在最高位時對於的十六進制會爆long long //#pragma comment(linker,

原创 UVA 11174 - Stand in a Line(組合遞歸計數)

大致題意:有n個人,給出m對關係,(a,b) 表示b是a的父親, 現在有多少種方案使他們排成一列,使得沒有人排在他們父親前面 (對1e9+7取模) 思路: 可見,給出了一顆森林,對於每棵樹,樹根顯然必須排第一位,然後對每棵子樹用組合統