12 2012 档案

摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int max(int a,int b){return ab?b:a;} long long x[55]={ 1,2,5,10,20,25,50, 100,125,200,250,500, 1000... 阅读全文
posted @ 2012-12-22 20:33 Felix_F 阅读(126) 评论(0) 推荐(0) 编辑
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int max(int a,int b){return ab?b:a;} int main() { int cas,t=1; cin>>cas; while(cas--) { doubl... 阅读全文
posted @ 2012-12-22 20:30 Felix_F 阅读(140) 评论(0) 推荐(0) 编辑
摘要:打素数表,构造矩阵,然后BFS可得答案#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int max(int a,int b){return ab?b:a;} const int maxn=200; bool p[maxn*maxn*2]; in... 阅读全文
posted @ 2012-12-22 20:27 Felix_F 阅读(136) 评论(0) 推荐(0) 编辑
摘要:所有的题目百度都有,问问题前先百度,这是黄金定律所有题都给个思路:具体代码都可百度A:把素数筛出来,先构造原矩形,就是一个一个往下推,然后构造被挖掉合数的矩形遍历原矩形找到起点和终点,然后后构造的矩形中的素数就相当于障碍物,整个问题就化成一个迷宫问题了用BFS一搜就能得出最短距离B:具体证明:http://www.doc88.com/p-792551521271.html直接代最后的海伦公式C:分成左右两块,左边两列数枚举,右边两列数哈希构造哈希表O(n^2),枚举O(n^2)根据左边枚举的情况找右边的hash值就行了,hash用链表哈希不懂就百度,寒假一定要搞懂哈希下半年也会开哈希专题D:水 阅读全文
posted @ 2012-12-22 20:24 Felix_F 阅读(143) 评论(0) 推荐(0) 编辑
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;int max(int a,int b){return ab?b:a;}#define V 205#define INF 0x3f3f3f3fint cap[V][V],flow[V][V];// cap是每条边的容量,flow是每条边 阅读全文
posted @ 2012-12-11 04:53 Felix_F 阅读(130) 评论(0) 推荐(0) 编辑
摘要:#include#include#include#includeusing namespace std;const int N=205;const int INF=0x3f3f3f3f;int s[N][N];//记录图的邻接矩阵int d[N];//记录图中各点的层次int n,m;int min(int a,int b){ return aQ; memset(d,-1,sizeof(d));//此处初始化要特别注意,以上版本的初始化就存在很大问题 d[1]=0;//如果处理不慎就很容易死循环 Q.push(1); while(!Q.empty()){ ... 阅读全文
posted @ 2012-12-10 09:04 Felix_F 阅读(155) 评论(0) 推荐(0) 编辑
摘要:const int INF = 0x3f3f3f3f; const int MAXN=510; int uN,vN;//u,v数目 int g[MAXN][MAXN];//构图 int link[MAXN]; //link[v]=u表示右边对左边的匹配 bool used[MAXN];//是否访问过 bool dfs(int u)//从左边开始找增广路径 { int v; for(v=0;v<vN;v++)//右边顶点编号从0开始 { if(g[u][v]&&!used[v]) //如果存在通路,且从u开始搜索时该点没访问过 { used[v]=true... 阅读全文
posted @ 2012-12-04 08:44 Felix_F 阅读(145) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示