原创 UVa:1596 - Bug Hunt

題目描述: 輸入並模擬一段程序,輸出第一個bug所在的行。每行程序有兩種可能: 數組定義:格式爲arr[size],例如a[10]; 賦值語句:格式爲arr[index]=value,例如a[0]=3或者a[a[0]]=3 賦值語句可

原创 UVa: 10391 - Compound Words

題目描述:給出一個詞典,找出所有的複合詞,即恰好有兩個單詞連接而成的單詞。輸入每行都是一個由小寫字母組成的單詞。輸入已按照字典序從小到大排序,且不超過12000個單詞。輸出所有的複合詞按照字典序從小到大排列。 思路:用set存儲所有的單詞

原创 leetcode:Repeated DNA Sequences

class Solution { public: char hash[1024*1024]; vector<string> findRepeatedDnaSequences(string s) { vecto

原创 UVa: 1595 - Symmetry

題目鏈接:http://http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=4470 題目描述:給出

原创 UVa 10763 - Foreign Exchange

題目鏈接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1704 題目描述:有n個學生想交換到

原创 來說說二分查找

二分查找是我們經常會遇到的算法,思路清晰,代碼簡潔。二分查找要求序列有序,且支持隨機存取,一般情況下我們討論的序列不存在相同元素,則二分查找可以很熟練的表示如下: int binsearch(int A[], int n, int tar

原创 vs2012配置OpenGL SuperBible5環境

剛拿到opengl編程寶典第五版,打算配置好書中源碼的編程環境,折騰了一天,終於弄好了,現在記錄下完整的過程: 參考博客:http://www.csdn123.com/html/mycsdn20140110/e5/e55a7b5fee77

原创 Ducci Sequence

題目描述:對於一個n元組(a1,a2,......an),可以對於每個數求出它和下一個數的差的絕對值,得到一個新的n元組(|a1-a2|,|a2-a3|,......|an-a1|)。重複這個過程,得到的序列稱爲Ducci序列,例如:(8

原创 leetcode:Number of 1 Bits

1: class Solution { public: int hammingWeight(uint32_t n) { int count = 0; while(n) {

原创 vignette濾鏡效果

vignette濾鏡效果:把圖像邊緣像素變暗,中心元素變得明亮。 首先看看效果,原圖如下: 濾鏡處理後的效果: 實現思路: 變暗——對彩色圖像而言,對每個像素的三個通道即RGB分別減去一個相同的值v(保證變化後的像素值在0~255之間

原创 leetcode:Search for a Range

class Solution { public: int searchLowerBound(int A[], int n, int target) { int left=0,right=n-1,res=-1

原创 UVa:1597 - Searching the Web

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">題目思路:</span><span style=

原创 leetcode:Permutations

class Solution { vector<vector<int> > ret; int N; public: void perm(vector<int> &num, int i){

原创 leetcode:Reverse Bits

class Solution { public: uint32_t reverseBits(uint32_t n) { uint32_t m = 0; for(int i=0;i<32;i++)

原创 leetcode:Partition List

/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(i