原创 Smart Sales——電商一種可能的廬山升龍霸

首先說2個題外話: A. 前幾天看了TED一個視頻,《好想法從哪來》,推薦,鏈接在此,網易快點感謝我。 http://v.163.com/movie/2010/9/9/I/M77RM5PCH_M78B2899I.html B. 最近跟領

原创 Sicily 1527. Tiling a Grid With Dominoes

題意: 問一個 L*4 的矩形,用2*1的小矩形組成有多少種組法。 思路: 遞推。用一個4bit的整數表示“行狀態”。寫出15個遞推式即可。 首先,定義 f [ i ] [ j ] 爲, 已組成長度 (i - 1)* 4 的完美矩形,

原创 Sicily 1049. Mondriaan

題意:給2種積木(1*1的正方形和2*1的矩形),給一個L*2的矩形,問,有多少方法可以拼成這個矩形。 思路:一個遞推。 定義 :  f [i][0] --- 長度爲 i 的矩形,可以由多少種方案組成; f [i][1] --- 在長

原创 Learning Python:1. 生成器函數、列表解析與map,for循環的效率對比

利用time模塊的 time()函數來比較,運行一個 10000 長度的列表 1000次 ,比較不同方法的耗時。 # file timeseqs.py import time , sys reps = 1000 size = 100

原创 Learing Python : 4. ActiveX控件的實現

ActiveX控件是Ms的一項技術,具體去百度吧。 這是我們密碼學與網絡安全(2門課放一起上,跪了)課的第一次作業。 好了。要用到的模塊是 win32com 。 編寫控件,可以寫成一個類,然後用 win32com.server.reg

原创 Sicily 1060. Bridging Signals

這題挺簡單。 看圖就懂意思了,求不相交的線數目。 什麼時候兩條線交叉呢?   ---  i > j  但 a[i] < b[j] 的時候。 由於題目中a[i] = i ; 那就簡單地成爲了一個經典 ” 最長上升子序列 “問題啦。

原创 【玩味】一道有趣的飛機題

題目大意是這樣的: 飛機上有100個座位,編號爲1到100;另有100個乘客,標號也是1到100,其中有兩個盲人。盲人先登機,隨機選擇座位坐下,其他乘客一一陸續登機,如果他的座位號沒人坐,坐下,否則隨機選個空座位坐下。問題:最後一個登機的

原创 Sicily 1888. Circular Sequence

題目給一個整數序列,讓你想象它們是首尾相連的一個圈,讓你求一段,使得這段內的和最大。 Segment Sum 最大。 其實,這種Segment可以有2種情況——一種是,沒有跨越頭尾的;另一種是跨過頭尾的。 前者,只需要用一個O

原创 【玩味】警察抓逃犯

這是在看《暗時間》的時候看到的題目。順帶推薦下此書,尤其是第三部分,教如何思考解決問題的。反正我覺得是比記住“進程之間的通信方法”有用得多。 題目:一個國家有N個島(島國人你好。。),有些島之間有橋聯通。保證任意2島可達(不一定直接達)

原创 Sicily 1448. Antimonotonicity

題目的意思跟 Missile 是一樣的(見上篇),數據量變大而已。 A之。 代碼: #include <cstdio> #include <queue> using namespace std ; #define maxn 300

原创 【算法】牛頓迭代法

當迭代次數夠多的時候,xi就接近正確的值x了。那麼, 紅線斜率 k = f'(xn) 一點數學運算,可以算出 Xn+1 = Xn - f(Xn)/f'(Xn) (點斜式寫出紅線方程,令Y=0 即可得出 Xn+1了。 初始值可以隨便挑

原创 Sicily 1685. Missile

有一種聰明的反導系統,可以“一上一下”地飛。 那麼,給定一個數組表示一堆導彈的飛行高度,求最多能打掉多少導彈。 好吧,求一個  “最長 顛簸 子序列”。 模仿 “最長上升子序列” 的動態規劃解法, dp[i] 表示 “以第i

原创 用github pages發佈靜態網站

假設你有一堆前端文件,html,css,js,它們配合得很好,在本機用瀏覽器可以打開,展示出一個靜態的網站,你想把它放到互聯網上。 一,添加一個ssh key,這個有什麼用呢?你可以把它理解成,操縱你的github賬戶的憑證吧。 ht

原创 Sicily 1563. GECKO

題目背景挺有趣的,但,是個水題。。。。 一面牆上有好多格子,每個格子有很多蚊子,一隻壁虎想吃儘可能多的蚊子。 它的法定移動方法如圖,很2B。 求問它最多可以吃到多少隻蚊子。 動態規劃可以解決,在每個格子,可以吃到最多

原创 Learning Python : 3. iterator 迭代器

A. 一個類裏面,如果實現了  __iter__ 這個函數, 那這個類就是 “可迭代的” B. 如果它還實現了 next ( self ) ,那它就稱爲  迭代器 舉一個簡單的例子: 先上代碼: __metaclass__ = t