自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Free Loop~~~跳动的音符

开荒~刷题~重新起航~追寻梦想~永不放弃~~~

  • 博客(25)
  • 收藏
  • 关注

原创 POJ1679次小生成树

判断最小生成树是不是唯一。#include#include#includeconst int maxn=110,maxm=10010,INF=100000000;struct node{ int x,y,w,f;};struct node a[maxm],tmp;int f[maxn],rank[maxn],pre[maxn],pres[maxn],p[maxn],n,ansx

2015-08-14 22:05:14 830 1

原创 POJ2395 最小生成树裸题三种复杂度做法

#include#include#includeconst int maxn=2010,maxm=10010;struct node{ int x,y,w;};struct node a[maxm],tmp;int f[maxn],rank[maxn];void qsort(int l,int r){ int mid=a[(l+r)/2].w,i,j; i=l;j=r; w

2015-08-14 20:45:45 700

原创 SPFA

#include#include#includeconst int maxn=100,INF=1000000000;int a[maxn][maxn],p[maxn],d[maxn],q[maxn*maxn];int main(){ freopen("spfa.in","r",stdin); freopen("spfa.out","w",stdout); int i,j,k,m,

2015-08-14 16:50:53 1235

原创 次小生成树

#include#include#includeconst int maxn=30010,maxm=150010,INF=100000000;struct node{ int x,y,w,f;};struct node a[maxm],tmp;int f[maxn],rank[maxn],pre[maxn],pres[maxn],p[maxn],n,ansx[maxm];int

2015-08-14 12:06:15 912

原创 最小生成树之PRIM-O(nlog2n)

#include#include#includeconst int Maxn=30010,Maxm=120010,Inf=1000000000;int e,to[Maxm],ws[Maxm],begin[Maxn],next[Maxm];int d[Maxn],p[Maxn],q[Maxn],pos[Maxn];void add(int x,int y,int z){ to[++e]

2015-08-14 09:00:05 756 1

原创 拓扑排序之NOIP2003神经网络

#include#include#includeconst int maxn=110;int c[maxn],u[maxn],a[maxn][maxn],w[maxn][maxn],rd[maxn],cd[maxn],q[maxn],p[maxn],pd[maxn];int main(){ freopen("network.in","r",stdin); freopen("netwo

2015-08-13 17:13:26 621

原创 最小生成树之PRIM-O(n^2)

#include#include#includeconst int maxn=1010,maxm=10010,INF=1000000000;int a[maxn][maxn],d[maxn],p[maxn];int main(){#ifndef ONLINE_JUDGE freopen("prim.in","r",stdin); freopen("prim.out","w",std

2015-08-13 12:03:26 616

原创 最小生成树之KRUSCAL

#include#include#includeconst int maxn=1010,maxm=10010;struct node{ int x,y,w;};struct node a[maxm],tmp;int f[maxn],rank[maxn];void qsort(int l,int r){ int mid=a[(l+r)/2].w,i,j; i=l;j=r; w

2015-08-13 11:39:03 591

原创 图论基础UVA10047

#include#include#includeconst int maxn=30;struct node{ int x,y,c,dr,s;};char str[maxn];bool p[maxn][maxn][5][4],a[maxn][maxn];struct node q[maxn*maxn*4*5];void din(int i,int x1,int y1,int c1

2015-08-13 10:13:02 439

原创 图论基础UVA11624

#include#include#includeconst int maxn=1010;struct node{ int x,y,s;};char str[maxn];bool p[maxn][maxn],a[maxn][maxn];int t[maxn][maxn],d[4][2]={{1,0},{0,1},{-1,0},{0,-1}};struct node q[maxn*

2015-08-13 09:33:07 396

原创 图论基础UVA10054

#include#include#includeconst int maxn=55,maxm=1010;int a[maxn][maxn],num[maxn],ans[maxm];int n,m;void dfs(int x){ for(int i=1;i<=50;i++) { if(a[x][i]) { a[x][i]--; a[i][x]--; df

2015-08-12 21:28:46 696

原创 图的深搜与广搜

#include#include#includeint a[100][100],p[100];int d[100],n;void dfs(int x){ int i,j,k; p[x]=1; printf("%d ",x); for(i=1;i<=n;i++) if(a[x][i] && !p[i]) dfs(i);}int main(){ int i,j,k,k

2015-08-12 17:28:06 755

原创 BST 插入删除查找遍历

/*-------------------输入:566 99 33 22 11333 5 11输出11 22 33 66 99111 22 66 99011 22 66 99011 22 66 99任务是输入N个数,建立一颗BST二叉搜索树,查找删除其中的一些元素,再中序遍历如果找到了,删除并返回1,如果没找到,返回0;-------------------*/

2015-08-10 17:30:39 429

原创 POJ2774 字符串HASH

#include#include#include#define ull unsigned long longconst ull B=100000007;const int maxn=100000+100,mod=100003;char a[maxn],b[maxn],tmp[maxn];int alen,blen;int e,begin[maxn],next[maxn*2];ul

2015-08-10 00:33:43 819

原创 POJ3461 字符串HASH

#include#include#include#define ull unsigned long long const ull B = 1e8+7; const int MAXN = 10010; char a[MAXN],b[MAXN*100]; int ans;int find(){ int al=strlen(a),bl=strlen(b);

2015-08-09 12:38:01 709

原创 POJ2503 字符串HASH

#include#include#include#define ull unsigned long longconst ull p = 1e8+7;const int mod=100003;int e,to[mod],next[mod],begin[mod]; char a[mod][12],b[mod][12]; int hashx(char *s){ int len=strl

2015-08-09 03:09:11 525

原创 POJ2503 字典树

#include#include#includestruct node{ char word[15]; int count; struct node *next[30]; node(){ count=0; memset(next,0,sizeof(next)); }};void insert(struct node *p,char *s1,char *s2){ int

2015-08-09 01:16:29 792

转载 字符串HASH模板

/* 从b串中寻找和a串长度相同的子串,返回开始位置 不保证绝对正确,发生冲突概率为O(sqrt(n)), n为哈希函数的最大值 */ #include#include#include#define ull unsigned long long const ull B = 1e8+7; const int MAXN = 5010; char

2015-08-09 01:15:00 1301

原创 BFS模版程序

#include#include#includestruct node{ int x,y,s;};struct node a[10000+10];int map[101][101],p[101][101],d[4][2]={{1,0},{-1,0},{0,1},{0,-1}};int main(){ int i,j,k,m,n; int f,l,u,v; scanf("%d%

2015-08-07 15:23:04 832

原创 POJ1995 快速幂模版

#include#includelong long f(long long m,long long n,long long k){ long long b = 1; while (n > 0) { if (n & 1) b = (b*m)%k; n = n >>1 ;

2015-08-06 11:45:07 574

原创 HDU1754 线段树 (完全二叉树)

#include#include#includeconst int maxn=200000+10;struct node{ int s; int l,r;};struct node tree[maxn*10];int a[maxn];int max(int x,int y){ return x>y?x:y;}int create_tree(int h,int x,int

2015-08-06 11:36:08 869

原创 POJ2777 线段树(结构体指针)

#include #include struct node{ int c,s,t; struct node *l,*r; node(){ c=1; l=NULL;r=NULL; }

2015-08-05 23:25:51 890

原创 HDU1075 字典树

#include#include#includestruct node{ int count; char word[30]; struct node *next[30]; node(){ count=0; memset(next,0,sizeof(next)); }};struct node *h,*p,*q;char w1[30],w2[30],s[3010];v

2015-08-04 11:57:48 741 1

原创 POJ2001 字典树

写法一:#include #include#includestruct node{ int count; struct node *next[26]; };struct node *root,*p,*q;char s[1010][25];int main(){ int i,j,k,m,n=0; root=new node; root->count=0; for(i=0

2015-08-04 01:16:05 528

原创 贪心之最大子矩阵和

O(N^3)#include#includeconst int maxn=101;int a[maxn][maxn],s[maxn][maxn];int main(){ int i,j,k,m,n,u,v; int x,y; scanf("%d",&n); for(i=1;i<=n*n;i++){ scanf("%d",&k); x=(i-1)/n+1; y=i%

2015-08-03 17:44:04 1111

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除