hdu1102 Constructing Roads
来源:互联网 发布:access和mysql的区别 编辑:程序博客网 时间:2024/06/07 06:44
先把已知路段的距离设为0,然后prim
code
/*ID: yueqiqPROG: numtriLANG: C++*/#include <set>#include <map>#include <ctime>#include <queue>#include <cmath>#include <stack>#include <limits>#include <vector>#include <bitset>#include <string>#include <cstdio>#include <cstring>#include <fstream>#include <string.h>#include <iostream>#include <algorithm>#define Si set<int>#define LL long long#define pb push_back#define PS printf(" ")#define Vi vector<int>#define LN printf("\n")#define lson l,m,rt << 1#define rson m+1,r,rt<<1|1#define SD(a) scanf("%d",&a)#define PD(a) printf("%d",a)#define SET(a,b) memset(a,b,sizeof(a))#define FF(i,a) for(int i(0);i<(a);i++)#define FD(i,a) for(int i(a);i>=(1);i--)#define FOR(i,a,b) for(int i(a);i<=(b);i++)#define FOD(i,a,b) for(int i(a);i>=(b);i--)#define readf freopen("input.txt","r",stdin)#define writef freopen("output.txt","w",stdout)const int maxn = 101;const int INF = 1111;const int dx[]={0,1,0,-1};const int dy[]={1,0,-1,0};const double pi = acos(-1.0);const double eps= 1e-7;using namespace std;int N,M;int edge[maxn][maxn];int dis[maxn];bool vis[maxn];int prim(){ SET(vis,false); int s=1; FOR(i,1,N) dis[i]=edge[1][i]; vis[s]=true; int minn; int ans=0; FOR(i,1,N-1){ minn=INF; FOR(j,1,N){ if(!vis[j] && dis[j]<minn){ minn=dis[j]; s=j; } } vis[s]=true; ans+=minn; FOR(j,1,N){ if(!vis[j] && dis[j]>edge[s][j]) dis[j]=edge[s][j]; } } return ans;}int main(){ while(~scanf("%d",&N)){ FOR(i,1,N) FOR(j,1,N) edge[i][j]=INF; FOR(i,1,N) FOR(j,1,N){ SD(edge[i][j]); } SD(M); int a,b; FOR(i,1,M){ SD(a);SD(b); edge[a][b]=edge[b][a]=0; } PD(prim());LN; } return 0;}
- Constructing Roads hdu1102
- Constructing roads(HDU1102)
- hdu1102 Constructing Roads
- HDU1102 Constructing Roads
- Constructing Roads hdu1102 kruskal
- HDU1102--Constructing Roads
- hdu1102 Constructing Roads
- hdu1102:Constructing Roads(prime)
- HDU1102 Constructing Roads【Prim】
- HDU1102---Constructing Roads
- HDU1102 Constructing Roads
- HDU1102 Constructing Roads
- HDU1102-Constructing Roads
- HDU1102&&POJ2421 Constructing Roads
- HDU1102 Constructing Roads (Kruskal)
- hdu1102 Constructing Roads
- hdu1102 Constructing Roads(prim)
- 7.22 T hdu1102 Constructing Roads
- 递归调用——C++ Primer Plus
- vim常用命令总结
- 2012-07-29
- 牛腩新闻发布系统 (3) 存过过程或函数""需要""参数,但未提供该参数
- 抽象类
- hdu1102 Constructing Roads
- android中json解析以及基础知识
- JAVA利用飞信接口发送短信
- 为什么injector了47个站点,而generate的时候却把上次爬去的父链接给过滤掉了?
- 随便写点
- ArcGIS for flex 在使用XMl读取内容
- 日期类
- JDK、Tomcat、Weblogic在Linux上的安装与配置
- POJ 3250 单调堆栈