上一页 1 ··· 6 7 8 9 10 11 下一页
  2011年5月26日
摘要: Problem DescriptionGive you two numbers A and B, if A is equal to B, you should print "YES", or print "NO".Inputeach test case contains two numbers A and B.Outputfor each case, if A is equal to B, you should print "YES", or print "NO".Sample Input1 22 23 34 3S 阅读全文
posted @ 2011-05-26 21:54 枫叶飘泪 阅读(1843) 评论(1) 推荐(0) 编辑
  2011年5月25日
摘要: 注意:结构体中每个字母的指针下都可存在一个结构体单元,即26个字母的指针单元。#include<stdio.h>#include<string.h>#include<stdlib.h>struct T{ T *ch[26]; int n,flag;}rt;char in[15];void init(T *t)//初始化{ for(int i=0;i<26;i++) { t->ch[i]=NULL; } t->n=t->flag=0;}void insert(T *t,char *in){ if(*in)//判断输入字符是否为空 { i 阅读全文
posted @ 2011-05-25 17:42 枫叶飘泪 阅读(737) 评论(0) 推荐(1) 编辑
摘要: #include<stdio.h>#include<string.h>#include<stdlib.h>const int inf=0x7fffffff;int n,m;int map[110][110],hash[110],dis[110];int prim() { int sum=0; dis[1]=0; for(int i=1;i<=n;i++) { int pos,t=inf; for(int j=1;j<=n;j++) { if(hash[j]==0) { if(dis[j]<t) { t=dis[j]; pos=j; } } 阅读全文
posted @ 2011-05-25 17:07 枫叶飘泪 阅读(499) 评论(0) 推荐(0) 编辑
  2011年5月21日
摘要: 畅通工程 Time Limit : 1000/1000ms (Java/Other)Memory Limit : 32768/32768K (Java/Other)Total Submission(s) : 12Accepted Submission(s) : 6Font: Times New Roman | Verdana | Georgia Font Size: ← →Problem Description省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可)。经过调查评估,得到的统计表中列出了有可能建设公路的若干条道路的成 阅读全文
posted @ 2011-05-21 11:20 枫叶飘泪 阅读(306) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h>#include<string.h>#include<stdlib.h>int n,m,set[124];struct val{ int x,y,v;}e[10010];int find(int x){ return set[x]==x?x:find(set[x]);}int kruskal(){ int sum=0; for(int i=1;i<=m;i++) { int x=e[i].x,y=e[i].y,v=e[i].v; int a=find(x),b=find(y); if(a!=b) { set[b]=a; 阅读全文
posted @ 2011-05-21 10:54 枫叶飘泪 阅读(377) 评论(0) 推荐(0) 编辑
  2011年5月20日
摘要: qsort和sort的区别First qsort基本快速排序的方法,每次把数组分成两分和中间的一个划分值,而对于有多个重复值的数组来说,基本排序的效率较低。集成在C语言库函数里面的的qsort函数,使用 三 路划分的方法解决这个问题。所谓三路划分,是指把数组划分成小于划分值,等于划分值和大于划分值的三个部分。函数对buf 指向的数据按升序排序。使用方法:void qsort( void *base, size_t num, size_t width, int (__cdecl *compare )int compare (const void *elem1, const void *elem2 阅读全文
posted @ 2011-05-20 22:05 枫叶飘泪 阅读(14371) 评论(0) 推荐(0) 编辑
摘要: 1.dijkstra()算的是某个固定点到任意两点的最短路,而floyed()则是计算图中任意两点之间的最短路。2.floyed()算法算的最大数组可开至100左右,而dijkstra()可以更大。 阅读全文
posted @ 2011-05-20 21:46 枫叶飘泪 阅读(362) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h>#include<string.h>#include<stdlib.h>int n,m,set[1000];int find(int x)//查找根节点{ return set[x]==x?x:set[x]=find(set[x]);//递归}void Union(int x,int y)//合并不相等根节点的两个集合{ int a=find(x),b=find(y); if(a!=b) set[a]=b;}int main(){ int a,b,x,y,sum; while(scanf("%d%d",& 阅读全文
posted @ 2011-05-20 21:09 枫叶飘泪 阅读(274) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h>#include<string.h>#include<stdlib.h>int n,m,map[124][124];const int inf=0x7fffffff;void floyed(){ for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) for(int k=1;k<=n;k++) if(map[i][j]!=inf&&map[i][k]!=inf) if(map[i][j]+map[i][k]<map[j][k]) map[j][k]=ma 阅读全文
posted @ 2011-05-20 19:36 枫叶飘泪 阅读(225) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h>#include<stdlib.h>#include<string.h>int n,m,hash[1010],dis[1010],map[1010][1010];const int inf=0x7fffffff;void dijstra(){ dis[1]=0; for(int i=1;i<=n;i++) { int t=inf,pos; for(int j=1;j<=n;j++)//找出当前未标记的最小顶点 { if(hash[j]==0) { if(dis[j]<t) { t=dis[j]; pos=j 阅读全文
posted @ 2011-05-20 19:30 枫叶飘泪 阅读(324) 评论(4) 推荐(1) 编辑
上一页 1 ··· 6 7 8 9 10 11 下一页