Time of Update: 2014-08-05
C++標頭檔保護符和變數的聲明定義,符和聲明1、#ifndef #define #endif標頭檔保護符在編譯的過程中,每一個.cpp檔案被看成一個單獨的檔案來編譯成單獨的編譯單元,#ifndef 保證類的標頭檔在同一個.cpp檔案中被多次引用後不會出現重定義問題。注意:只是防止在同一個.cpp檔案中被多次引用。例子:// file1.hclass file1{};// file2.h#include "file1.h"class file2{}
Time of Update: 2014-08-05
實現2個超大數的加法運算,超大數加法運算一道筆試題~實現2個超大資料的加法運算,這2個超大數,意思就是long也裝不下的數,就頂大概100位吧。這道題其實看上去很簡單,但是實際上涉及到的知識點還是很多的,非常考驗一個人的程式設計能力和對API的熟悉程度。思路很簡單,這麼大的數,long都存不下,那隻能存在String中了,然後將每個數字取出,放到數組,由最末位開始計算,算加法,判斷是否進位,進位則前位+1,若超過長度,則copy到新的數組。下面上代碼:public class BigInt
Time of Update: 2014-08-05
cmake函數參數解析,cmake函數解析 最近在遷移公司的make系統到cmake上,發現cmake的function參數很奇怪。例如,如果我們向一個function傳遞list作為參數,在function中,形參會變成如下狀況:set(SRC)list(APPEND SRC a.cpp b.cpp)list(APPEND SRC c.cpp
Time of Update: 2014-08-05
Hello
Time of Update: 2014-08-05
HDU 4908 BestCoder Sequence(組合數學),hdu4908HDU 4908 BestCoder Sequence題目連結題意:給定一個序列,1-n的數字,選定一個作為中位元m,要求有多少連續子序列滿足中位元是m思路:組合數學,記錄下m左邊和右邊一共有多少種情況大於m的數字和小於n數組的差,然後等於左邊乘右邊所有的和,然後最後記得加上左右兩邊差為0的情況。當時也是比較逗,還用樹狀數組去搞了,其實完全沒必要代碼:#include <cstdio>#include
Time of Update: 2014-08-05
hdu 4908 BestCoder Sequence(計數),hdu4908題目連結:hdu 4908 BestCoder Sequence題目大意:給定N和M,N為序列的長度,由1~N組成,求有多少連續的子序列以M為中位元,長度為奇數。解題思路:v[i]記錄的是從1~i這些位置上有多少個數大於M,i-v[i]就是小於M的個數。pos為M在序列中的位置。如果有等式i−j=2∗(v[i]−v[j−1]),i≥pos≥j那麼i和j既是一組滿足的情況。將等式變形i−2∗v[i]=j−2∗v[j−1]
Time of Update: 2014-08-05
HDU 1588 Gauss Fibonacci(矩陣快速冪+二分等比序列求和),hdufibonacciHDU 1588 Gauss Fibonacci(矩陣快速冪+二分等比序列求和)ACM題目地址:HDU 1588 Gauss Fibonacci題意: g(i)=k*i+b;i為變數。 給出k,b,n,M,問( f(g(0)) + f(g(1)) + ... + f(g(n)) ) %
Time of Update: 2014-08-05
Leetcode_Wildcard Matching,leetcode_wildcardImplement wildcard pattern matching with support for '?' and '*'.'?' Matches any single character.'*' Matches any sequence of characters (including the empty sequence).The matching should
Time of Update: 2014-08-05
HDU 3117 Fibonacci Numbers(斐波那契前後四位,打表+取對+矩陣快速冪),hdufibonacciHDU 3117 Fibonacci Numbers(斐波那契前後四位,打表+取對+矩陣快速冪)ACM題目地址:HDU 3117 Fibonacci Numbers題意: 求第n個斐波那契數的前四位和後四位。 不足8位直接輸出。分析: 前四位有另外一題HDU
Time of Update: 2014-08-05
HDU 2254 奧運(矩陣快速冪+二分等比序列求和),hdu2254HDU 2254 奧運(矩陣快速冪+二分等比序列求和)ACM題目地址:HDU 2254 奧運題意: 中問題不解釋。分析: 根據floyd的演算法,矩陣的k次方表示這個矩陣走了k步。 所以k天后就算矩陣的k次方。 這樣就變成:初始矩陣的^[t1,t2]這個區間內的v[v1][v2]的和。 所以就是二分等比序列求和上場的時候了。 跟HDU 1588 Gauss
Time of Update: 2014-08-05
poj 1113 Wall (凸包),poj1113wall凸包連結:poj
Time of Update: 2014-08-05
jquery ajax實現上傳檔案代碼,帶進度條,jqueryajax原文:jquery
Time of Update: 2014-08-05
hdu3360National Treasures (最大匹配,拆點法),treasuresNational TreasuresTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1038 Accepted Submission(s): 364Problem DescriptionThe great hall of the national
Time of Update: 2014-08-05
Codeforces 196 C. Paint Tree,codeforcespaint分治,選最左上的點分給根,剩下的極角排序後遞迴C. Paint Treetime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are given a tree with n vertexes
Time of Update: 2014-08-05
JAVA的反射機制學習筆記(二),java學習筆記
Time of Update: 2014-08-05
hdu 4909 String(計數),hdu4909題目連結:hdu 4909 String題目大意:給定一個字串,由小寫字母組成,最多包含一個問號,問號可以表示空或者任意一個字母。問有多少個子串,字母出現的次數均為偶數。解題思路:因為最多又26個字母,對應每個字母的奇數情況用1表示,偶數情況用0.將一個首碼串表示成一個位元。然後對於每種相同的數s,任選兩個即為一種可行子串(組合數學).
Time of Update: 2014-08-05
求鏈表倒數第幾個節點,倒數幾個節點使用兩個指標,和判斷一個鏈表是否形成環類似代碼:#include <iostream>#include <list>using namespace std;typedef struct node {int data;struct node *next ;}Node,*pNode;void creatNode( pNode &pHead ){bool isFirst=true;pNode p,q;int
Time of Update: 2014-08-05
淺談 trie樹
Time of Update: 2014-08-05
資料結構:最小產生樹--Prim演算法,--prim演算法 最小產生樹:Prim演算法最小產生樹 給定一無向帶權圖,頂點數是n,要使圖連通只需n-1條邊,若這n-1條邊的權值和最小,則稱有這n個頂點和n-1條邊構成了圖的最小產生樹(minimum-cost spanning tree)。Prim演算法
Time of Update: 2014-08-05
size_type與size_t的機器無關性,size_typesize_t1、首先說下這兩者之間的區別:sizetype是容器定義的類型,其使用範圍在容器內,即命名空間在容器內,如STL中string類有定義string::size_type類型,vector內同樣定義有vector<int>:size_type類型,它們的定義並不重複,命名空間不同罷了。而size_t類型的命名空間是全域的命名空間,全域只有一個,不能再次重複定義。2、那麼它們是什麼類型呢?