http://acm.zznu.edu.cn/problem.php?id=1914

asd的甩锅计划

时间限制: 1 Sec  内存限制: 128 MB
提交: 114  解决: 10
[提交][状态]

题目描述

大家对hdu上面的畅通工程系列一定很熟悉了吧。比如如下一段,就是畅通工程里面其中一个题的叙述。
某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要求铺设的公路总长度为最小。请计算最小的公路总长度。
大家觉得这种情况一定很简单而且生活中遇不到吧。然而你错了!NBUT的书记yh就遇到了这么个头疼事:asd下达命令让村长去把村里的路修的高端大气上档次,简单说就是重新建路,可是村长又甩手把这事给了yh书记。然而现在一个大问题是:经费不够用!因此yh书记觉得不可能每家每户都有一条道路通往村里任意一家,只要能走到就行了(不管是直接到达还是先经过别人家这样的间接到达)。
NBUT是个有名的“坑”地方,不是地方坑,而是地方有坑,这样的话在那些有坑的地方修路和在平地上修路的价钱当然不一样啦。更坑的是,村长已经划好一些可能要修的路线了,你只能在这些线路上面选一些来修。比如说,尽管村长要修的路连着张三丰和李四收,这条路会经过一些坑,但是你决定修这条路的话不能绕过它,只能去填平,经费当然不一样啦,当然你也可以选择不去修这条路,只要能让村子里每户人家能相互到达就可以了。
现在yh书记已经知道村里有n户人家了,并且拿到村长给他的平面设计图,上面标明哪些路要修多长,和修这条路的费用,现在书记来请教你,完成镇里的任务最少需要修多长的路,和最少要花多少钱。书记是个爱民的人,希望村民能省力就省力,所以多花一些钱修更短的路是无所谓的,但是能完成这个任务当然还是能省钱就省钱。另外村长图里的起点终点相同的两条路是认为不一样的,可能按路线1建路比路线2减更短更省钱,谁知道呢~所以若是按照村长的图不能完成村里的任务,那么就输出“村长你家铺子烧啦”。

输入

每行两个整数n(1 <= n <= 1000),m (1 <= m <= 2e6+7),分别表示村里有多少户人家,和村长给的图里面的路线。
接下来m行,每行四个整数 a, b, c, d(1 <= a, b <= n, 1 <= c <= 1000, 1 <= d <= 1e9+7),分别表示农民a家到b家建一条路的话,长度是c,花费是d。

输出

对于每组数据,如果能满足建路要求,那么每行输出两个整数 length, cost,分别表示一共要修路的长度,和修路的花费,具体如题意描述。否则输出“村长你家铺子烧啦”。

样例输入

2 1
1 2 3 4

样例输出

3 4
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
#include<ctype.h>
#define INF 0x3f3f3f3f
#define max(a, b)(a > b ? a : b)
#define min(a, b)(a < b ? a : b)
#define N 1010struct st
{int a, b, c;long long d;
} node[2000010];
int n, m, f[N];int Find(int x)
{if(x != f[x])f[x] = Find(f[x]);return f[x];
}int cmp(const void *a, const void *b)
{struct st *s1 = (struct st *)a, *s2 = (struct st *)b;if(s1->c == s2->c)return s1->d - s2->d;return s1->c - s2->c;
}int main()
{int i, a, b, c, k, l, num, ra, rb;long long d, w;while(scanf("%d%d", &n, &m) != EOF){l = w = k = 0;num = 1;for(i = 1 ; i<= n ; i++)f[i] = i;while(m--){scanf("%d%d%d%lld", &a, &b, &c, &d);node[k].a = a;node[k].b = b;node[k].c = c;node[k].d = d;k++;}qsort(node, k, sizeof(node[0]), cmp);for(i = 0 ; i < k ; i++){ra = Find(node[i].a);rb = Find(node[i].b);if(ra != rb){l += node[i].c;w += node[i].d;num++;f[ra] = rb;}if(num == n)break;}if(num == n)printf("%d %lld\n", l, w);elseprintf("村长你家铺子烧啦\n");}return 0;
}

转载于:https://www.cnblogs.com/qq2424260747/p/4686916.html

zznu 1914 asd的甩锅计划相关推荐

  1. 项目中如何避免团队成员相互甩锅?

    见过一些团队,出了问题就甩锅,问题推来推去,半天没人解决,从而影响了项目的进度,伤害了团队的士气. 一.工作职责不明确 甩锅,这种情况大多是工作职责范围不明确导致的.那么我们如何确定工作职责范围呢? ...

  2. 深度学习先驱 Yann LeCun 被骂到封推!AI 偏见真该甩锅数据集?

    整理 | 夕颜 出品 | CSDN(ID:CSDNnews) 最近,人工智能领域又发生了一次热热闹闹的争论,随后演变成一场偏离轨道的争吵,目前以 Yann 道歉封推暂告一段落......        ...

  3. 写了个牛逼的日志切面,甩锅更方便了!

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 来源:juejin.im/post/68449040879 ...

  4. 甩锅!偷懒!PUA!转嫁压力!铲除异己!压榨下属!这就是职场leader真面目!...

    yamy事件引发了人们对"职场Pua"的热烈讨论,一个渣leader能给员工造成巨大的心理阴影,深受毒害的网友们纷纷吐槽自己的leader.一个网友针对职场上各种leader奇葩行 ...

  5. python跑得慢_代码跑得慢甩锅Python?手把手教你如何给代码提速30%

    原标题:代码跑得慢甩锅Python?手把手教你如何给代码提速30% 来源丨Medium 编译丨王转转 大数据文摘出品 https://mp.weixin.qq.com/s/bY3REj6qVw0M1N ...

  6. 线上SQL脚本执行错了出事之后互相甩锅怎么办?

    平常我们线上执行的SQL脚本都是很粗犷的.呼叫一下DBA或者运维,把脚本发过去,然后告诉他在哪个环境执行.然后双方沟通不畅,测试环境的脚本执行到生产了!脚本写的有问题执行错了却没有回滚脚本!或者每个人 ...

  7. git统计每个人的代码行数_项目出了bug如何甩锅?使用这个Git工具帮你找到元凶...

    公众号关注 "程序员遇见GitHub" 设为"星标",重磅干货,第一时间送达. 作为程序员,在职场当中经常遇到出现了问题需要定职定责的情况.比如某个系统出现了b ...

  8. iphone以旧换新活动_iPhone第3轮降价背后:销售下滑库克甩锅给中国,国产手机崛起分食蛋糕...

    排版 | 王科 编辑 | 梁夜 作者 | 吴晓宇 来源 | 财经天下周刊(ID:cjtxzk) 曾经吃掉手机行业9成利润的巨无霸公司苹果,不得不"自降身价". 3月5日之后,苏宁易 ...

  9. mysql链路跟踪工具_EasySwoole利用链路追踪组件制作甩锅工具

    前言 最近前端老是反馈API调用异常,说请求成功但是没有数据返回! 我写的代码怎么可能有bug,肯定是前端调用的方式不对! 经过一番套鼓,直接把请求参数和响应内容打印到控制台,果然不出我所料,请求缺少 ...

  10. 北妈每日一题:如何甩锅给后端!

    一 之前的我一直强调,我们应该主动承担责任,这样可以使你快速成长,年轻人一定要主动而又时刻保持热情. 但后一句还有:仅限于年轻人! 如今,甩锅,绝对是你要修炼的一门技能,如果这门技能,不炉火纯青,你会 ...

最新文章

  1. input 默认样式的修改
  2. abb焊接机器人编程全解_焊接机器人的焊枪编程也是很重要的
  3. jsonp解决跨域问题
  4. (四)java B2B2C Springboot仿淘宝电子商城系统技术解决方案
  5. win10英伟达NVIDIA无法登录
  6. 系统烧写方法(MfgTool烧写工具)
  7. ARC082F - Sandglass(思维)
  8. nosql怎么使用_使用NoSQL实施实体服务–第5部分:使用云提高自治性
  9. 小米刷第三方recovery_小米平板4/Plus LTE版本开启电话功能
  10. 20. 有效的括号 golang(2)
  11. c#ovalshape_【原创】C# 实现拖拉控件改变位置与大小(SamWang)(附源代码下载)
  12. 在js中访问html页面,javascript – 在IE9的html页面中访问js里面的全局函数
  13. Java实例方法和类方法的区别
  14. 转: Oracle AWR 报告 每天自动生成并发送邮箱
  15. 【OpenCV】分离多通道图像RGB的值
  16. 一篇想要获取积分的博
  17. python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
  18. 10.5 Parameterize Method 让方法携带参数
  19. 树莓派使用USB摄像头和motion实现监控
  20. [转] Photoshop教程8000例

热门文章

  1. 如何自给自足获取磁力种子
  2. 详解统计套利交易系统模型
  3. 网络安全——Cobaltstrike
  4. 软考试题中经常混淆的概念
  5. RabbitMQ实现即时通讯
  6. 魅族更新Android10,魅族16S升级90hz?Flyme安卓10如约而至
  7. 基于模型的软件开发方法综述
  8. 面试准备之java8的新特性
  9. 【python for finance】 Portfolio Optimization 投资组合优化
  10. PS中图层混合模式的Blend公式