原创 POJ 2050 Searching the Web

hash.        /*Searching the Web Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 1670 Accepted: 367 De

原创 POJ 1475 Pushing Boxes 推箱子游戲

兩個BFS。 嘗試使用A*算法,但由於使用stl的priority_queue,效率太低,不能滿足時限要求。   /*Pushing Boxes Time Limit: 2000MS Memory Limit: 131072K To

原创 POJ 1050 To the Max

一維最大子段和的擴展,枚舉多行合成一行的情況,然後使用一維最大子段和的方法計算。 /*To the Max Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 249

原创 POJ 1702 Eva's Balance 三進制

 三進制   /*Eva's Balance Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 3155 Accepted: 1567 Descriptio

原创 POJ 1011 Sticks

搜索+剪枝。 /*Sticks Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 78763 Accepted: 17360 Description Geo

原创 POJ 1258 Agri-Net Kruskal算法

Kruskal算法. #include "stdlib.h" #include "stdio.h" #include "string.h" #define MAX_SET_NODE_NUM 101 typedef struct _S

原创 POJ 1077 Eight A*算法 八數碼問題

可以使用A*算法解決。 啓發函數f(n)=g(n)+h(n),h(n)=所有棋子到其目標位置的距離和*K,也就是曼哈頓距離*K。 經過驗證,k=1時會超出POJ的時限,k=4時最快,但K=4得到的結果其實不能保證是最短路徑,如下面例子:

原创 POJ 1160 Post Office

狀態方程gaDistance[m][n] = min{gaDistance[m-1][t] + gaiSumDistance[t+1][n] } gaiSumDistance[t][n]表示在t到n站間設立一個郵局所能達到的最小和;  

原创 POJ 1013 Counterfeit Dollar

邏輯問題。 如果爲even,則確定爲真幣;否則爲懷疑狀態:Light or Heavy, 如果既被懷疑爲Light又被懷疑爲Heavy,則也確定爲真幣; 否則被懷疑次數最多的硬幣爲假幣。     /*Counterfeit Dollar

原创 POJ 2411 Mondriaan's Dream

用00表示2*1的長方形,11表示1*2的長方形, 則每一行的每一個狀態對下一行的狀態有要求,gastStateLimit[][i]表示某行第i種狀態對下一行的各種要求。 最後一行沒有“凸出”,也就是對“下一行”沒有要求,因此也就是統計最

原创 POJ 1085 Triangle War 極小極大值算法+α-β剪枝

用極小極大值算法解決比較直觀,但是效率太低,即使使用了α-β剪枝,效率仍然很低,勉強ACCEPT, 因爲這種方法本質上是深度搜索,會有大量的重複計算,如果像DP那樣將計算過的狀態記錄下來,則還有進一步優化的空間。 /*Triangle

原创 POJ 2676 Sudoku 數獨遊戲

DFS. /*Sudoku Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 7686 Accepted: 3757 Special Judge Descr

原创 POJ 3253 Fence Repair Huffman

利用貪心算法中的Huffman解決。   /*Fence Repair Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 10280 Accepted: 3279

原创 POJ 1012 Joseph

  /*Joseph Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 33497 Accepted: 12550 Description The Jose

原创 POJ 1061 青蛙的約會

求解模線性方程:a*x = b(mod n)。參見《算法導論》P533.     /*青蛙的約會 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 56557 A