摘要:
HDU 1016http://acm.hdu.edu.cn/showproblem.php?pid=1016題目大意:給定一個數N,從1到N的這些整數構成一個環,它的目的就是讓你找出第相鄰兩個數都是素數的環。而且是所有的環。View Code #include<iostream>#include<cstdio>#include<cstring>#include<string>#include<algorithm>using namespace std;int N;bool vis[21];int pre[21];bool prime[
閱讀全文
摘要:
這個奇偶剪枝相當牛B呀,佩服。HDU 1010http://acm.hdu.edu.cn/showproblem.php?pid=1010題目大意:就是讓你來找一下,能否在限定的時間內從S到達D.Sample Input:4 4 5S.X...X...XD....Sample Output:NOView Code #include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<string>#include<algorithm>usi
閱讀全文
摘要:
這次說的又有點新鮮的東西。那就是回溯了。本題是一個經典回溯例題,注意體會一下OK,那么我們說說他有什么用呢?其實很簡單了,它的作用就是控制DFS的搜索流程。在本題簡單一點來說,就是它能使得DFS符合題意。直接看例子吧。題目:HDU 1045 http://acm.hdu.edu.cn/showproblem.php?pid=1045題意:這個是一個八皇后的變種。不算難。Sample Input:4 .X.. .... XX.. .... Sample Output:5View Code #include<iostream>#include<cstring>#includ
閱讀全文
摘要:
如果我們不好確定搜索的結束條件,那么我們可以假設一下他的搜索深度。將這個深度取到極限就可以了。也就是說,如果當小于這個深度有解了,那么停止搜索,得到答案;如果等于這個深度了,還沒有解,那么我們就認為此種情況下無解,也停止搜索,也算是得到了答案,即無解。下面來看一個很簡單的例子吧。題目:http://acm.swust.edu.cn/oj/problem/0823/View Code #include "iostream"#include "cstdio"#include "cstring"#include "string&q
閱讀全文
摘要:
其實就是個DFS。題目:http://acm.swust.edu.cn/oj/problem/0827/View Code #include "iostream"#include "string"#include "cstring"#include "algorithm"using namespace std;#define maxn 105#define INF 0xFFFFFFFint map[maxn][maxn], mid, k, N, M;int Link[maxn]; //記錄行的狀態int used[
閱讀全文
摘要:
lower_bound的headfile是algorithm.lower_bound的工作原理就是二分查找了。lower_bound的作用:lower_bound的返回值減去數組的地址就是要查找的元素在數組中的位置。即:Pos = lower_bound(a, a+10, 3)-a;那么Pos就是在數組a[10]中的位置了。下面給出它的具體用法并說明一些要注意的問題。View Code #include "iostream"#include "algorithm"using namespace std;int main(){ int a[4]={1, 2
閱讀全文
摘要:
DescriptionIn the second year of the university somebody started a study on the romantic relations between the students. The relation "romantically involved" is defined between one girl and one boy. For the study reasons it is necessary to find out the maximum set satisfying the condition:
閱讀全文
摘要:
先來了解一下Hash的基本思路:設要存儲對象的個數為num, 那么我們就用len個內存單元來存儲它們(len>=num);以每個對象ki的關鍵字為自變量,用一個函數h(ki)來映射出ki的內存地址,也就是ki的下標,將ki對象的元素內容全部存入這個地址中就行了。這個就是Hash的基本思路。Hash為什么這么想呢?換言之,為什么要用一個函數來映射出它們的地址單元呢?This is a good question.明白了這個問題,Hash不再是問題。下面我就通俗易懂地向你來解答一下這個問題。現在我要你存儲4個元素 13 7 14 11顯然,我們可以用數組來存。也就是:a[1] = 13; a
閱讀全文
摘要:
來園有3個月了,感覺在這里的感覺真的不錯,特別是這里的管理員,真的很勤奮呀。對工作也十分的負責,令人佩服呀。然而,在使用的過程中也發現了小小的不足,下面提出來,供管理員們參考。原因:隨著時間的推移,我寫的文章也越來越多了,目前有119篇,而且還在以一定的速度增加,119篇是個什么概念呢?在博客園中是每10篇文章的標題分為一頁的,那么我現在也就有12頁了。文章多了,這是一件好事,但是找起來就不是一件容易的事了。眾所周知,人總會忘的,所以,時不時的要回顧一下已經學過的知識,有時遇到了問題,也會去已經寫過的文章中尋找答案……,所有這些原因就導致了要不停的去找已經寫過的文章。但是,這么多文章找起來不方
閱讀全文
摘要:
素數這個東西在編程的時候經常用到,下面給出一種快速打出一定量素數的代碼。View Code bool NotPrime[40005];long long Prime[40005];void init()//得到素數{ long long i,j,num=0; for(i=2;i<=40000;i++) //注意是從2開始的,直到你想要的范圍。 { if(!NotPrime[i]) //如果不是不是素數(也就是說是素數了) { Prime[num++]=i; //將素數i存儲在prime數組中。 for(...
閱讀全文