上一页 1 ··· 55 56 57 58 59 60 61 62 63 ··· 71 下一页
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1879prime算法View Code 1 #include <iostream> 2 #include<cstdio> 3 #include<string.h> 4 #define INF 0x3f3f3f3f 5 using namespace std; 6 int w[101][101],visit[101],low[101],sum = 0; 7 void prime(int n) 8 { 9 int i,j,k,m;10 memset(visit,0,sizeof 阅读全文
posted @ 2012-08-06 17:01 _雨 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 1232模板题View Code 1 #include <stdio.h> 2 #include<string.h> 3 int father[1001]; 4 int find(x) 5 { 6 if(x!=father[x]) 7 father[x] = find(father[x]); 8 return father[x]; 9 }10 void union1(int x,int y)11 {12 father[x] = y;13 }14 int main()15 {16 int i,j,k,n,m,a,b;17 while(scanf(... 阅读全文
posted @ 2012-08-03 20:26 _雨 阅读(173) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2485很裸的最小生成树View Code 1 #include<stdio.h> 2 #include<string.h> 3 #define INF 100000 4 int w[1001][501]; 5 int visit[1001],low[1001],max; 6 void prime(int n) 7 { 8 int i,j,k; 9 memset(visit,0,sizeof(visit));10 visit[1] = 1;11 for(i = 2; i <= n ; i... 阅读全文
posted @ 2012-08-03 00:15 _雨 阅读(228) 评论(0) 推荐(0) 编辑
摘要: GCD模板__int64 gcd(__int64 a,__int64 b){ return b==0? a:gcd(b,a%b);}欧几里德算法又称辗转相除法,用于计算两个整数a,b的最大公约数。其计算原理依赖于下面的定理: gcd函数就是用来求(a,b)的最大公约数的。 gcd函数的基... 阅读全文
posted @ 2012-08-02 19:56 _雨 阅读(326) 评论(0) 推荐(0) 编辑
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=2647定义一个数组 来标记 保证每次循环找到的是同一层次的 它们加的数是相同的 用f来表示找到多少个入度为0的点 2 #include 3 struct node 4 { 5 int v,w,next; 6 }men[20001]; 7 int first[10001],de[10001],t,kk[10001]; 8 void init() 9 {10 t = 0;11 memset(first,-1,sizeof(first));12 }13 void add(int u,int... 阅读全文
posted @ 2012-08-02 19:29 _雨 阅读(140) 评论(0) 推荐(0) 编辑
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=4339对线段树还是不熟悉吧 写起来挺费劲的 大体知道怎么写 还是老出错 一直纠结区间被砍开了 怎么找剩余的部分 这部分还必须是跟第一部分连着的后来想到找到第一个区间之后 以区间的r+1作为新的查找点继续递归查找犯了很二的错误 建树建小了 该是100W 折腾了差不多4小时吧View Code 1 #include<stdio.h> 2 #include<string.h> 3 struct node 4 { 5 int l,r,data; 6 }s[3000000]; 7 #define 阅读全文
posted @ 2012-08-02 18:41 _雨 阅读(235) 评论(0) 推荐(0) 编辑
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=4318这题做的好二 不会邻接表ME了一晚上 学会了邻接表 TLE了一晚上 看了最短路径WA了一上午 原来样例中用的100 我就直接写的100.。。。14次换来一次AC单元最短路径http://www.cnblogs.com/zen_chou/archive/2009/05/15/1457962.htmlView Code 1 #include<stdio.h> 2 #include<string.h> 3 #include<iostream> 4 #include<q 阅读全文
posted @ 2012-08-02 10:10 _雨 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 动态struct node{ int u,v,w; node *next;}*first[N];//一个节点相连的所有节点 构成一条链void init(){ memset(first,NULL,sizeof(first));}void add(int u,int v,int w){ node *p = new node; p->v = v; p->w = w; p->next = first[u];//类似于正序链表的插入 first[u] = p;}for(node *p = first[u] ; p!=NULL ; p= p->next){... 阅读全文
posted @ 2012-08-01 21:54 _雨 阅读(200) 评论(0) 推荐(0) 编辑
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1253View Code 1 #include<stdio.h> 2 #include<string.h> 3 int a[51][51][51]; 4 struct node 5 { 6 int x,y,z,num; 7 }q[50001]; 8 int p,d,f[51][51][51]; 9 int an[6][3] = {{0,0,1},{0,0,-1},{0,1,0},{0,-1,0},{1,0,0},{-1,0,0}};10 int main()11 {12 int i,j 阅读全文
posted @ 2012-08-01 17:32 _雨 阅读(136) 评论(0) 推荐(0) 编辑
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1372搜索8个可到达的点View Code 1 #include <stdio.h> 2 #include<string.h> 3 struct node 4 { 5 int tx,ty,num; 6 }q[100001]; 7 int u[8][2]={{-2,-1},{-2,1},{-1,-2},{-1,2},{1,-2},{1,2},{2,-1},{2,1}}; 8 int main() 9 {10 int i,j,k,n,m,w,x[2],y[2],d,p,f[50][50]; 阅读全文
posted @ 2012-08-01 10:28 _雨 阅读(139) 评论(0) 推荐(0) 编辑
上一页 1 ··· 55 56 57 58 59 60 61 62 63 ··· 71 下一页