原创 一個最簡單的 scrapy 爬蟲搭建

每次有新的東西要爬總是忘了步驟要重新百度一遍,現在自己記錄一下,方便以後看。 步驟 定義 Item 首先把要爬的東西封裝成Item,在item.py裏定義。這步是爲了之後方便在pipelines裏處理item。 import sc

原创 在服務器上跑 Java Selenium 的教程

前言 之前要寫一個爬全民K歌的 Selemiun 代碼,但是發現只能在本地跑跑,一旦部署到服務器上就會出現奇怪的找不到瀏覽器的錯誤,那有個毛用啊對吧。後來 Hcbbt 巨巨給我發了個教程,才發現少裝了個東西。現在把這個完整的過程寫一下,希

原创 HDU 5647 - DZY Loves Connecting (樹形dp)

題意 DZY有一棵n個結點的無根樹,結點按照1∼n 標號。 DZY喜歡樹上的連通集。一個連通集SS是由一些結點組成的集合,滿足SS中任意兩個結點u,v能夠用樹上的路徑連通,且路徑上不經過S之外的結點。顯然,單獨一個結點的集合也是連通集。

原创 下載愛奇藝視頻的方法

年初的時候我媽讓我幫忙下一個愛奇藝的視頻,要截取其中的音頻。我逛了一圈都沒找到合適的工具,直到我發現了這個神器。 you-get 當他下載成功的那一刻我都淚流滿面了。 項目主頁 https://github.com/soimort/y

原创 TopCoder SRM676 Div. 2 Problem 550 - BoardEscapeDiv2

題意 Alice和Bob玩遊戲,一個棋子,只能走K步,輪到誰誰不能動就輸,問最後誰贏。 思路 暴力搜索必勝點。 對於某個位置,我們暴力搜索四周有沒有先手必敗的點,如果有的話這個點就是必勝點。因爲k很小,隨便搞搞就行了。 代碼 class

原创 HDU 5044 - Tree (樹鏈剖分)

感覺一百年沒發題解了。 這兩天在吳神的嘲諷下終於去做了一年半前就準備學的樹剖(:3」∠) 然後隨便發個模板題代碼吧,證明我還是活着的。 思路 不能用線段樹維護,用掃描線的方式,兩個端點加減,然後掃一遍。 代碼 #include <st

原创 通過代理使用 Git

原文鏈接http://cms-sw.github.io/tutorial-proxy.html 昨天Github竟然被牆了,導致 push 不上去。 通過 SSH 協議連接 Git 倉庫 如果是這樣連接遠程的,就是通過 SSH 協議。

原创 IntelliJ IDEA 中 MySQL 出現 [42000][1064] 錯誤的解決辦法

在用 IDEA 自帶的 Database 工具進行 SQL 語句查詢的時候出現了這麼一個錯誤: [2016-04-18 12:07:46] [42000][1064] You have an error in your SQL synta

原创 TopCoder SRM 681 Div. 2 Problem 500 - ExplodingRobots (枚舉)

題意 兩個機器人一開始在不同的座標,有一個上下左右的指令序列,他們可以按順序任意執行一些指令,問有沒有可能到同一個地方。 思路 一般都會先想到記錄一下兩隻機器人能走過的地方,如果有重複就能爆炸。 然而指令長度爲50,這樣需要250 ,肯定

原创 FaceBook Hacker Cup 2016 Qualification - Text Editor (dp)

題意 從N個字符串中,打印M個。 有3種操作: 增加一個字符 刪除一個字符 打印緩衝區字符 問打印出K個並且緩衝區爲空的最少操作。 思路 假設我們已經打印完了一個字符串,要打印下一個,那麼顯然,我們要刪去len(s1)−lcp(s1

原创 TopCoder SRM 677 Div. 2 550 - FourStrings (枚舉)

題意 給四個字符串,問能包括他們四個,並且長度最短的字符串的長度是多少。 思路 長度越短,說明上一個字符串末尾和當前字符串開頭的相同越多。 考慮到數據非常小,我們可以枚舉所有排列,然後逐個處理。 當前字符串有兩種選擇 它是之前字符串的子

原创 PKU 1140 - Brackets Sequence (區間dp + 記憶化)

題意 輸出最少長度匹配括號 思路 區間dp,其他博客說得很詳細了。主要是看沒人寫記憶化的區間dp,就來一發。 代碼 #include <stack> #include <cstdio> #include <list> #include <

原创 Codeforces 607B - Zuma (區間DP)

題意 給一串數字,每次可以消去任意一段連續的迴文數字,問最少消去幾次能消完。 思路 我們考慮最左端的點l。 要麼l被單獨消去,ans(l,r)=1+ans(l+1,r) 要麼在[l,r] 內存在一個arr[k]=arr[l] ,這樣的話

原创 FaceBook Hacker Cup 2016 Qualification - High Security (貪心)

題意 有一個地圖,每個守衛可以看守上下左右連續的空位,問最少要幾個守衛覆蓋整個地圖。 思路 我們先不管列的情況。 如果只管行的話,有幾個連續的區間就要幾個守衛。 然後考慮列。我們可以發現,一個守衛除了看守本行之外,最多還可以額外帶一個另

原创 Ubuntu 中輸入法出現兩個輸入框的解決辦法

最近裝完搜狗輸入法之後發現出來兩個輸入框,一個是搜狗的,另一個是 fcitx 的。 然而 fcitx 的怎麼也關不掉。 提供一種並不完美的解決辦法: kill 掉 fcitx-qimpanel這個進程。 grizzly@grizzly-