原创 例題2.5 數字和與倍數 UVa11361

1.題目描述:點擊打開鏈接 2.解題思路:本題屬於數位dp型問題。根據題意描述,不妨設f(x)表示區間[0,x)中符合條件的個數。那麼最後的答案就是f(b+1)-f(a)。問題轉化爲如何計算f(x)。 根據加法原理,我們可以逐位統計。根據

原创 LA4730 Kingdom

1.題目描述:點擊打開鏈接 2.解題思路:本題利用BIT+並查集解決。根據題意可以發現,x值是沒有意義的,因此本題實際上是一維的一個操作題。由於line操作需要輸出州的個數和城市的個數,且是統計一個點處的結果,自然可以想到用離線標記法來解

原创 UVa11488 Hyper Prefix Sets

1.題目描述:點擊打開鏈接 2.解題思路:本題用Trie解決。根據題意,我們需要維護一條路徑上每個結點的字符出現的次數,可以邊插入邊統計。接下來就是遍歷每一個字符串了,遍歷的時候更新ans即可。 3.代碼: #include<iostre

原创 UVa10883 Supermean

1.題目描述:點擊打開鏈接 2.解題思路:本題是楊輝三角的應用。演算後不難發現,n個數相乘,每一項的係數就是第n-1行對應的楊輝三角的係數。不過考慮到這裏的n會非常大,因此不能直接計算出對應的組合數,而是需要事先取自然對數,最後累加答案的

原创 UVa11038 How Many O's?

1.題目描述:點擊打開鏈接 2.解題思路:本題要求統計區間[m,n]中0出現的次數。可以利用加法原理,乘法原理來解決。不妨設solve(x)表示區間[0,x]中,0出現的次數。那麼該如何計算這個函數呢?我們可以考慮逐位統計。設當前在第cu

原创 《挑戰》例題4.1 Random Walk

1.題目描述:有一個n*m的網格,從(0,0)出發,每一步可以朝着上下左右4個方向等概率地移動,另外一些格子中有石頭,因此無法移動到這些格子,求第一次到達(n-1,m-1)格子的期望步數。可以保證至少存在一條從(0,0)到(n-1,m-1

原创 例題4.7 飛機場 UVa11168

1.題目描述:點擊打開鏈接 2.解題思路:本題還是凸包的簡單應用。根據題意不難發現,所有點都在同側,且到直線距離之和儘量短,那麼只可能是凸包上的某一條邊。因此,可以事先求一下凸包,然後枚舉邊即可。總的時間複雜度爲O(N),但是如何在O(1

原创 LA3490 Generator

1.題目描述:點擊打開鏈接 2.解題思路:(解法一)高斯消元+KMP算法;(解法二)暫時不明覺厲==。這裏主要講一下解法一的思路。設E(i)表示從下標i到模式串末尾這段子串的長度期望。那麼首先建立失配狀態轉移圖,那麼根據期望的線性性質和全

原创 例題4.6 包裝木板 UVa10652

1.題目描述:點擊打開鏈接 2.解題思路:本題是凸包的一道簡單的應用,只需要事先把輸入的矩形的頂點放入頂點集P中,然後對該頂點集求凸包,並計算這個凸包的面積即可。 3.代碼: #include<iostream> #include<alg

原创 LA4998 Simple Encryption

1.題目描述:點擊打開鏈接 2.解題思路:本題是一道非常好的思維題。猛一看感覺好像沒有什麼特別好的方法,但是如果仔細觀察這個方程,就會發現要求解的x實際上是一個不動點,只要找到了這個不動點,以後就會穩定的這個地方。所以可以一開始選擇一個比

原创 《C++ Primer》學習筆記共享

忙完了算法競賽,開始準備好好學習一番C++語言了,正在學習《C++ Primer》英文版這本書,寫的的確很棒,以下是我自己總結的筆記,有興趣的可以查看~ 共享鏈接如下:C++ Primer學習筆記

原创 HDU 5454 Excited Database (2015年瀋陽賽區網絡賽E題)

1.題目描述:點擊打開鏈接 2.解題思路:本題利用線段樹解決,根據題意,我們需要建立兩棵線段樹,分別維護主對角線,副對角線。每個線段樹的結點需要維護sum,sumL,sumR,其中,sum表示當前區間元素的和,sumL表示[L,R]這段區

原创 我的ACM訓練歷程

2015年10月25日,我在瀋陽市東北大學劉長春體育館參加了第一次ACM區域賽,經過了緊張的5小時,以一枚銅牌收尾,從此算是暫時結束了我的ACM訓練歷程(明年看情況決定是否參加)。 回想整個比賽過程,第一個通過的是B題,隊友用了strs

原创 HDU 5451 Best Solver (2015年瀋陽賽區網絡賽B題)

1.題目描述:點擊打開鏈接 2.解題思路:第一次做這類通過矩陣求解整數部分的題目,學習了。首先是如何求(5+2sqrt(6))^n的整數部分,這裏可以參考如下的博客鏈接: 點擊打開鏈接 接下來,本題還有另外一個難點就是如何降低指數的次數。

原创 UVa11892 Box Game

1.題目描述:點擊打開鏈接 2.解題思路:本題可以先寫一個記憶化搜素觀察一下,發現當n=2^k-1時候,是Bob勝利,否則都是Alice勝利。然後就可以敲代碼了。。 3.代碼: #include<iostream> #include<al