Connect the Cities(MST prim)
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Description
Input
Output
Sample Input
Sample Output
- #include<stdio.h>
- #include<string.h>
- using namespace std;
- #define N 505
- #define INF 0x7fffffff
- int n , m , k ;
- int g[N][N] , vis[N] , low[N] ;
- void prim ()
- {
- int pos = , res = ;
- memset (vis , , sizeof(vis)) ;
- vis[pos] = ;
- for (int i = ; i <= n ; i++)
- if ( !vis[i] )
- low[i] = g[pos][i] ;
- for (int i = ; i < n ; i++) {
- int minn = INF ;
- pos = - ;
- for (int j = ; j <= n ; j++)
- if ( !vis[j] && low[j] < minn) {
- minn = low[j] ;
- pos = j ;
- }
- if (pos == -) {
- puts ("-1") ;
- return ;
- }
- res += minn ;
- vis[pos] = ;
- for (int j = ; j <= n ; j++)
- if (!vis[j] && low[j] > g[pos][j])
- low[j] = g[pos][j] ;
- }
- printf ("%d\n" , res) ;
- }
- int main()
- {
- // freopen ("a.txt" , "r" , stdin);
- int u , v , w ;
- int T , t;
- scanf ("%d" , &T) ;
- while (T--) {
- scanf ("%d%d%d" , &n , &m , &k) ;
- for (int i = ; i <= n ; i++)
- for (int j = ; j <= n ; j++)
- g[i][j] = INF ;
- for (int i = ; i < m ; i++) {
- scanf ("%d%d%d" , &u , &v , &w) ;
- if (g[u][v] > w)//notice
- g[u][v] = g[v][u] = w ;
- }
- for (int i = ; i < k ; i++) {
- scanf ("%d%d" , &t , &u) ;
- for (int j = ; j <= t - ; j++) {
- scanf ("%d" , &v) ;
- g[u][v] = g[v][u] = ;
- }
- }
- prim () ;
- }
- }
给偶上了一课,本以为用kruskal就能一条路走到黑:
但遗憾的TLE了,
Connect the Cities(MST prim)的更多相关文章
- Connect the Cities(prim)用prim都可能超时,交了20几发卡时过的
Connect the Cities Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- HDU 3371 Connect the Cities(prim算法)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3371 Problem Description In 2100, since the sea leve ...
- hdu3371 Connect the Cities (MST)
Connect the Cities Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- hdu 3371 Connect the Cities (最小生成树Prim)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=3371 题目不难 稍微注意一下 要把已经建好的城市之间的花费定义为0,在用普通Prim算法就可以了:我没 ...
- HDU 3371 kruscal/prim求最小生成树 Connect the Cities 大坑大坑
这个时间短 700多s #include<stdio.h> #include<string.h> #include<iostream> #include<al ...
- Connect the Cities[HDU3371]
Connect the Cities Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)T ...
- hdu oj 3371 Connect the Cities (最小生成树)
Connect the Cities Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- hdu 3371 Connect the Cities(最小生成树)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=3371 984ms风险飘过~~~ /************************************ ...
- hdu 3371 Connect the Cities
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=3371 Connect the Cities Description In 2100, since th ...
随机推荐
- GDB调试汇编栈堆过程的学习
前期调试 我的程序代码是: 首先,用gcc g gdb.c -o gdb -m32产生32位汇编. 输入gdb gdb进入gdb调试器 在main函数处设置一个断点:b main 用disassemb ...
- Jenkins进阶系列之——02email-ext邮件通知模板
发现一个很好的邮件通知模板,根据我的需求定制了一些.分享一下. Default Subject: 构建通知:${BUILD_STATUS} - ${PROJECT_NAME} - Build # ${ ...
- 回顾一年的IT学习历程与大学生活
今天是2015年8月27日,距离成为大三狗还有一个多星期,在这个不算繁忙的暑假的下午来总结一下这一年来,在IT方面的学习. 一.入门(2014.3) 我大一的专业是信息工程,信息工程听上去就是信息(I ...
- Bootstrap系列 -- 28. 下拉菜单状态
下拉菜单项的默认的状态(不用设置)有悬浮状态(:hover)和焦点状态(:focus). 下拉菜单项除了上面两种状态,还有当前状态(.active)和禁用状态(.disabled).这两种状态使用方法 ...
- Nodejs学习笔记(七)--- Node.js + Express 构建网站简单示例
目录 前言 新建项目.建立数据库以及其它准备工作 新建express + ejs 项目:sampleEjs 创建数据库 修改package.json文件,安装session和mysql模块 样式和JQ ...
- 八幅漫画理解使用JSON Web Token设计单点登录系统
用jwt这种token的验证方式,是不是必须用https协议保证token不被其他人拦截? 是的.因为其实只是Base64编码而已,所以很容易就被解码了.如果你的JWT被嗅探到,那么别人就可以相应地解 ...
- ajax使用post提交中文
Ajax使用POST提交中文乱码问题 前段时间写JSP,使用AJAX以POST方式提交数据,如果是中文字符提交就会乱码,后来写ASP时用到AJAX以POST方式提交数据,中文一样是乱码.搜索一下相关资 ...
- 【codevs 1296】营业额统计 水~~
今天下午先写一个Splay水题来复习一下Splay模板.是不是有点太水了做这种水题我有点良心不安. 可笑的是一开始我竟然WA了一组,看来是我低估水题的数据范围了,我是空节点直接返回inf或-inf,明 ...
- druid(德鲁伊)数据源的使用和配置 阿里出品
pom.xml <dependency> <groupId>com.alibaba</groupId> <artifactId>drui ...
- Android中实现自定义的拍照应用
可以参考:http://www.android-doc.com/guide/topics/media/camera.html 一.添加相应的权限 <uses-permission android ...