文章分类 -  hdu 图论

上一页 1 2

HDU 1690---最短路
摘要:非常恶心的最短路。。我wa了一中午,因为VC的限制,long long运行不了,但是这题又需要定义一个大于int的常数,自己写了一段代码无限wa。。。题目不算难,就是有点恶心。。直接floyd暴力就可以水过。。不纠结,日后有空再写一遍。附上代码: 1 #include <iostream> 2 #include <stdio.h> 3 #include <memory.h> 4 #include <cmath> 5 using namespace std; 6 7 const long long INF = 99999999999LL; //注意 阅读全文

posted @ 2013-02-04 20:15 acoderworld 阅读(49) 评论(0) 推荐(0)

HDU 3342--拓扑排序
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=3342拓扑排序的水题,利用拓扑排序判环。 1 #include<iostream> 2 #include<cstring> 3 using namespace std; 4 #define maxn 1005 5 int g[1005][1005]; 6 int top,vis[maxn],rudu[maxn],n; 7 void topo() 8 { 9 int i;10 for(i=0;i<n;i++)11 {12 if(!rudu[i]&&!vis[i])1 阅读全文

posted @ 2013-02-04 20:10 acoderworld 阅读(62) 评论(0) 推荐(0)

HDU 3666--差分约束系统
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=3666这题网上搜到的代码几乎都是错的,很多都是用队列写,然后判断负权回路都是大于sqrt(n)。这不科学。。。这题的正解是DFS版SPFA,或者改用栈写。题意:给你一个N*M的矩阵,求两列数a1,a2,a3...an 和 b1,b2.....bm使得对矩阵中的每个数进行下面的操作之后的值在[L,U]之间,操作为:a[i] * m[i][j] / b[j]。 N,M<=400思路:差分约束。由题意可知,对于矩阵中的每个元素要满足的条件是:L <=a[i] * m[i][j] / b[j] <= 阅读全文

posted @ 2013-02-04 20:03 acoderworld 阅读(112) 评论(0) 推荐(0)

HDU 1856 More is better
摘要:并查集,定义一个新的数组更新集合节点个数,模板题。。输入为0,输出为1。开始多此一举还改成了零,没能理解好题意。。代码: 1 #include<stdio.h> 2 int p[10000001],s[10000001],mmax; 3 int findx(int x) 4 { 5 if(x!=p[x]) 6 p[x]=p[findx(p[x])]; 7 return p[x]; 8 } 9 void merge(int x,int y)10 {11 int fx=findx(x);12 int fy=findx(y);13 if(fx!... 阅读全文

posted @ 2013-01-27 22:26 acoderworld 阅读(53) 评论(0) 推荐(0)

HDU 2063 过山车
摘要:二分图匹配入门基础题,脑残的map没有初始化,导致WA了几次。不多说,上代码。。。 1 #include<iostream> 2 using namespace std; 3 int visit[1500],map[1500][1500],dx[1500],dy[1500],nx,ny; 4 int dfs(int v) 5 { 6 for(int i=1;i<=ny;i++) 7 { 8 if(map[v][i]&&!visit[i]) 9 {10 visit[i]=true;11 if(!dy[... 阅读全文

posted @ 2013-01-27 22:20 acoderworld 阅读(43) 评论(0) 推荐(0)

上一页 1 2

导航