题目描述

农夫John发现做出全威斯康辛州最甜的黄油的方法:糖。把糖放在一片牧场上,他知道N(1<=N<=500)只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油。当然,他将付出额外的费用在奶牛上。

农夫John很狡猾。像以前的Pavlov,他知道他可以训练这些奶牛,让它们在听到铃声时去一个特定的牧场。他打算将糖放在那里然后下午发出铃声,以至他可以在晚上挤奶。

农夫John知道每只奶牛都在各自喜欢的牧场(一个牧场不一定只有一头牛)。给出各头牛在的牧场和牧场间的路线,找出使所有牛到达的路程和最短的牧场(他将把糖放在那)

输入输出格式

输入格式:

第一行: 三个数:奶牛数N,牧场数(2<=P<=800),牧场间道路数C(1<=C<=1450)

第二行到第N+1行: 1到N头奶牛所在的牧场号

第N+2行到第N+C+1行: 每行有三个数:相连的牧场A、B,两牧场间距离D(1<=D<=255),当然,连接是双向的

输出格式:

一行 输出奶牛必须行走的最小的距离和

输入输出样例

输入样例#1:

  1. 3 4 5
  2. 2
  3. 3
  4. 4
  5. 1 2 1
  6. 1 3 5
  7. 2 3 7
  8. 2 4 3
  9. 3 4 5
输出样例#1:

  1. 8

说明

{样例图形

  1. P2
  2. P1 @--1--@ C1
  3. |
  4. |
  5. 5 7 3
  6. |
  7. | C3
  8. C2 @--5--@
  9. P3 P4

} {说明:

放在4号牧场最优

}

分析

Oops! 你的分析出现了一些问题,需要在这儿省略.

 已完成  1%                                                : (

请查阅代码:  0x8888888

  1. #include<iostream>
  2. #include<cstdio>
  3. #include<algorithm>
  4. #include<cstring>
  5. #include<queue>
  6. #include<vector>
  7. #include<functional>
  8. #define maxn 800+10
  9. #define inf 0x3f3f3f3f
  10.  
  11. int n,p,c,i,j,x,y,t,ans=inf,tot,u;
  12. int a[maxn][maxn],w[maxn][maxn];
  13. *maxn];
  14. bool inq[maxn];
  15. int main() {
  16. fuction_init:
  17. {
  18. scanf("%d%d%d",&n,&p,&c);
  19. ;i<=p;i++) {
  20. b[i]=;
  21. num[i]=;
  22. ;j<=p;j++) w[i][j]=inf;
  23. }
  24. ;i<=n;i++)
  25. scanf("%d",&b[i]);
  26. ;i<=c;i++) {
  27. scanf("%d%d%d", &x, &y, &t);
  28. w[x][y]=w[y][x]=t;
  29. a[x][++num[x]]=y;
  30. a[y][++num[y]]=x;
  31. }
  32. }
  33. fuction_spfa:
  34. {
  35. ans=inf;
  36. ;i<=p;i++){
  37. ; j <= p; j++) dis[j] = inf;
  38. memset(team,,sizeof team);
  39. memset(inq,false,sizeof inq);
  40. dis[i]=,inq[i]=true;
  41. std::queue<int>q; q.push(i);
  42. while(!q.empty()) {
  43. u=q.front();q.pop();
  44. inq[u]=false;
  45. ;j<=num[u];j++) {
  46. int r=a[u][j];
  47. if(dis[r]>dis[u]+w[u][r]) {
  48. dis[r]=dis[u]+w[u][r];
  49. if(!inq[r]) {
  50. inq[r]=true;
  51. q.push(r);
  52. }
  53. }
  54. }
  55. }
  56. tot=;
  57. ;j<=n;j++) tot+=dis[b[j]];
  58. ans=std::min(ans,tot);
  59. }
  60. printf("%d\n",ans);
  61. }
  62. }

[最短路]P1828 香甜的黄油 Sweet Butter的更多相关文章

  1. P1828 香甜的黄油 Sweet Butter 最短路 寻找一个点使得所有点到它的距离之和最小

    P1828 香甜的黄油 Sweet Butter 闲来无事 写了三种最短路(那个Floyed是不过的) 题目描述 农夫John发现做出全威斯康辛州最甜的黄油的方法:糖.把糖放在一片牧场上,他知道N(1 ...

  2. 洛谷P1828 香甜的黄油 Sweet Butter

    P1828 香甜的黄油 Sweet Butter 241通过 724提交 题目提供者JOHNKRAM 标签USACO 难度普及+/提高 提交  讨论  题解 最新讨论 我的SPFA为什么TLE.. 为 ...

  3. P1828 香甜的黄油 Sweet Butter

    对于这道洛谷ac而我整了一下午的codevs的题,我也是很绝望啊. 原因是队列数组开小了我勒个去???我说STL怎么能过 题目描述 农夫John发现做出全威斯康辛州最甜的黄油的方法:糖.把糖放在一片牧 ...

  4. [LUOGU] P1828 香甜的黄油 Sweet Butter

    题目描述 农夫John发现做出全威斯康辛州最甜的黄油的方法:糖.把糖放在一片牧场上,他知道N(1<=N<=500)只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油.当然,他将付出额外的费 ...

  5. P1828 香甜的黄油 Sweet Butter (spfa)

    题目描述 农夫John发现做出全威斯康辛州最甜的黄油的方法:糖.把糖放在一片牧场上,他知道N(1<=N<=500)只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油.当然,他将付出额外的费 ...

  6. 【香甜的黄油 Sweet Butter】

    [香甜的黄油 Sweet Butter] 洛谷P1828 https://www.luogu.org/problemnew/show/P1828 JDOJ 1803 https://neooj.com ...

  7. 洛谷 P1828 【香甜的黄油 Sweet Butter】

    这道题应该就是模板题了吧qwq. 统计每一个牧场的放糖的情况,选择最优的即可 有亿点水的绿题. #include <bits/stdc++.h> using namespace std; ...

  8. P1828 [USACO3.2]香甜的黄油 Sweet Butter

    题目描述 农夫$John$发现做出全威斯康辛州最甜的黄油的方法:糖.把糖放在一片牧场上,他知道$N(1\leqslant N\leqslant 500)$只奶牛会过来舔它,这样就能做出能卖好价钱的超甜 ...

  9. 洛谷 题解 P1828 【香甜的黄油 Sweet Butter】

    潇洒の开始 第一步:食用头文件和定义变量, 变量干什么用的说的很清楚 #include<iostream> #include<cstdio> #include<cstri ...

随机推荐

  1. Scrapy框架--使用cookie

    CookieMiddleware class scrapy.downloadermiddlewares.cookies.CookieMiddlewar 该中间件使得爬取需要cookie(例如使用ses ...

  2. 2017值得一瞥的JavaScript相关技术趋势

    2017值得一瞥的JavaScript相关技术趋势从属于笔者的Web 前端入门与工程实践,推荐阅读2016-我的前端之路:工具化与工程化获得更多关于2016年前端总结.本文主要内容翻译自,笔者对于每个 ...

  3. AspectCore中的IoC容器和依赖注入

    IOC模式和依赖注入是近年来非常流行的一种模式,相信大家都不陌生了,在Asp.Net Core中提供了依赖注入作为内置的基础设施,如果仍不熟悉依赖注入的读者,可以看看由我们翻译的Asp.Net Cor ...

  4. MSDN-9月杂志推荐

    序言:MSDN Magazine频道每月都会推出杂志,提供给广大开发者免费阅读,文章的作者往往都是国内外技术大牛.而且翻译良好(机器翻译除外)排班工整,是技术进阶的绝美助力! 本系列文章会关注MSDN ...

  5. 解决MySQL中文乱码问题

    决解乱码费了我好些时间啊! 乱码原因有 1.mysql未设置为支持汉字 2.没有发送头信息 3.使用的编译器不符合相应的编码 决解的方法是 在mysql里 我用的是Wanmp Server 1.在my ...

  6. gnome 3 美化

    首先,去http://gnome-look.org/找到需要的主题,然后手动安装或者用下载到的主题包里的脚本安装 手动安装对应路径如下: 鼠标,图标主题解压放置:~/.icons或/usr/share ...

  7. 转 node.js里面的http模块深入理解

    问题1:HTTP服务继承了TCP服务模型,是从connection为单位的服务到以request为单位的服务的封装,那么request事件何时触发? 注意:在开启keepalive后,一个TCP会话可 ...

  8. 日志管理之 Docker logs - 每天5分钟玩转 Docker 容器技术(87)

    高效的监控和日志管理对保持生产系统持续稳定地运行以及排查问题至关重要. 在微服务架构中,由于容器的数量众多以及快速变化的特性使得记录日志和监控变得越来越重要.考虑到容器短暂和不固定的生命周期,当我们需 ...

  9. echarts教程-asp.net+ashx实现堆积柱状

    说说看.崔西莲夫人紧接着说. 想不到史春吉是这种人. 你会这样说倒是有趣,因为这正是我当时的感觉.这跟奈维尔的个性不合.奈维尔,就像大部分男人一样,通常都是尽量避开任何可能造成尴尬或不愉快的场面.我怀 ...

  10. pandas.DataFrame学习系列1——定义及属性

    定义: DataFrame是二维的.大小可变的.成分混合的.具有标签化坐标轴(行和列)的表数据结构.基于行和列标签进行计算.可以被看作是为序列对象(Series)提供的类似字典的一个容器,是panda ...