157. [USACO Nov07] 奶牛跨栏

186. [USACO Oct08] 牧场旅行

★★   输入文件:pwalk.in   输出文件:pwalk.out   简单对比时间限制:1 s   内存限制:128 MB

n个被自然地编号为1..n奶牛(1<=n<=1000)正在同样被方便的编号为1..n的n个牧场中吃草。更加自然而方便的是,第i个奶牛就在第i个牧场中吃草。

其中的一些对牧场被总共的n-1条双向通道的一条连接。奶牛可以通过通道。第i条通道连接的两个牧场是A_i和B_i(1<=A_i<=N;1<=B_i<=N)其长度是L_i(1<=L_i<=10000)。

通道只会连接两个不同的牧场,所以这些通道使得整个牧场构成了一棵树。

奶牛们是好交际的希望能够经常的访问别的奶牛。急切地,它们希望你能通过告诉它们Q(1<=Q<=1000)对牧场的路径来帮助他们安排旅行。(这里将有Q个询问,p1,p2(1<=p1<=n;1<=p1<=n))

分数:200

问题名称:pwalk

输入格式:

  • 第1行:两个用空格隔开的整数:n和Q
  • 第2..n行:第i+1行包含三个用空格隔开的整数:A_i,B_i和L_i
  • 第n+1..N+Q行:每行包含两个用空格隔开的整数,代表两个不同的牧场,p1和p2

输入样例(file pwalk.in):

4 2
2 1 2
4 3 2
1 4 3
1 2
3 2

输出格式:

  • 第1..Q行:行i包含第i个询问的答案。

输出样例:

2
7

输出说明:

询问1:牧场1和牧场2的路径长度为2。 询问2:3->4->1->2;总长为7。


思路:裸SPFA错误原因:以后数组再开炸了吃屎!!!!!!!!!!!!!!!!!
 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<algorithm>
 5 #include<queue>
 6 using namespace std;
 7 const int MAXN=1001;
 8 const int maxn=0x7fffffff;
 9 struct node
10 {
11     int u;
12     int v;
13     int w;
14     int next;
15 }edge[MAXN];
16 int num=1;
17 int head[MAXN];
18 int dis[MAXN];
19 int n,q;
20 int vis[MAXN];
21 int spfa(int bg,int ed)
22 {
23     for(int i=1;i<=n;i++)dis[i]=maxn;
24     memset(vis,0,sizeof(vis));
25     queue<int>q;
26     q.push(bg);
27     dis[bg]=0;
28     vis[bg]=1;
29     while(q.size()!=0)
30     {
31         int p=q.front();
32         q.pop();
33         for(int i=head[p];i!=-1;i=edge[i].next)
34         {
35             int to=edge[i].v;
36             if(dis[to]>dis[p]+edge[i].w)
37             {
38                 dis[to]=dis[p]+edge[i].w;
39                 if(vis[to]==0)
40                 {
41                     q.push(to);
42                     vis[to]=1;
43                 }
44             }
45         }
46     }
47     return dis[ed];
48 }
49 int main()
50 {
51     freopen("pwalk.in","r",stdin);
52     freopen("pwalk.out","w",stdout);
53     scanf("%d%d",&n,&q);
54     for(int i=1;i<=n;i++)head[i]=-1;
55     for(int i=1;i<n;i++)
56     {
57         scanf("%d%d%d",&edge[num].u,&edge[num].v,&edge[num].w);
58         edge[num].next=head[edge[num].u];
59         head[edge[num].u]=num++;
60         edge[num].v=edge[num-1].u;
61         edge[num].u=edge[num-1].v;
62         edge[num].w=edge[num-1].w;
63         edge[num].next=head[edge[num].u];
64         head[edge[num].u]=num++;
65     }
66     for(int i=1;i<=q;i++)
67     {
68         int bg;
69         int ed;
70         scanf("%d%d",&bg,&ed);
71         printf("%d\n",spfa(bg,ed));
72     }
73     return 0;
74 }

 

186. [USACO Oct08] 牧场旅行相关推荐

  1. 185. [USACO Oct08] 挖水井

    185. [USACO Oct08] 挖水井 ★★   输入文件:water.in   输出文件:water.out   简单对比 时间限制:1 s   内存限制:128 MB 农夫约翰决定给他的N( ...

  2. 185.[USACO Oct08] 挖水井 (第三次考试大整理)

    185. [USACO Oct08] 挖水井 输入文件:water.in   输出文件:water.out   简单对比 时间限制:1 s   内存限制:128 MB 农夫约翰决定给他的N(1< ...

  3. USACO - 牛的旅行(Floyd)

    USACO - 牛的旅行 题意 农民John的农场里有很多牧区.有的路径连接一些特定的牧区.一片所有连通的牧区称为一个牧场.但是就目前而言,你能看到至少有两个牧区不连通.这样,农民John就有多个牧区 ...

  4. [USACO Oct08] 挖水井题解

    农夫约翰决定给他的N(1<=N<=300)个牧场浇水,这些牧场被自然的命名为1..N.他可以给一个牧场引入水通过在这个牧场挖一口井或者修一条管道使这个牧场和一个已经有水的牧场连接. 在牧场 ...

  5. 在线倍增法求LCA专题

    1.cojs 186. [USACO Oct08] 牧场旅行 ★★   输入文件:pwalk.in   输出文件:pwalk.out   简单对比 时间限制:1 s   内存限制:128 MB n个被 ...

  6. usaco Cow Tours 牛的旅行

    Cow Tours 牛的旅行 农民 John 的农场里有很多牧区.有的路径连接一些特定的牧区.一片所有连通的牧区称为一个牧场. 但是就目前而言,你能看到至少有两个牧区不连通.这样,农民 John 就有 ...

  7. BSOJ4217 【USACO 2013 Feburary Gold】旅行线路 DP(双路递推)

    4217 -- [USACO 2013 Feburary Gold]旅行线路 Description 贝西经营着一家旅行社,一天贝西带着几队游客沿着亚马逊河旅行,河的两边分布着一些景点,每个景点都对应 ...

  8. 【USACO 2.3.4】Cow Tours 牛的旅行

    题目描述 农民 John的农场里有很多牧区.有的路径连接一些特定的牧区.一片所有连通的牧区称为一个牧场.但是就目前而言,你能看到至少有两个牧场通过任何路径都不连通.这样,Farmer John就有多个 ...

  9. USACO 2015 January Contest Bronze——奶牛的旅行路线

    文章目录 题目描述 输入格式 输出格式 数据范围 输入样例 输出样例 实现代码--奶牛只想走一条路线的情况下 题目描述 厌倦了农场寒冷的冬季天气,奶牛贝茜计划飞往一个温暖的目的地度假. 不幸的是,她发 ...

最新文章

  1. Cardinality 对执行计划的重要性
  2. ubuntu 源码安装nginx
  3. WTMPlus 1.1 发布
  4. [SpringBoot2]yaml
  5. 苹果雪豹操作系统正式版_Android 11 正式版发布!
  6. vue控制台报错Duplicate keys detected: 'xxxx'. This may cause an update error.解决方案
  7. Kunpeng BoostKit 使能套件:大数据场景如何实现“大鹏一日同风起”倍级性能提升?
  8. 我的世界手机版javaui材质包_传奇世界中变版手机版下载-传奇世界中变版手机版最新下载...
  9. 市场营销读后感_好书共赏市场营销原理——带你探索市场营销成功的奥秘 !...
  10. POJ 1696 Space Ant(点积的应用)
  11. 【日常技巧】Rufus安装原版win10教程(全流程)
  12. VLAN划分和网络配置实例
  13. cppcheck 自定义规则_Cppcheck 用法-编码规范
  14. 软件工程考研笔记整理(三小时速成)(1)
  15. 2021第六届数维杯大学生数学建模竞赛题目
  16. 如何优化小红书笔记?教你三个小技巧,让你快速提高笔记排名
  17. atan2(a,b)和atan的区别
  18. 优秀网页翻译:高精度 10MHz GPS 驯服钟 (GPSDO) - Part 1
  19. 假如我年少有为不自卑
  20. 常见临近点算子的求解

热门文章

  1. 「机器学习速成」数据预处理,特征工程,良好特征的特点
  2. 一种新的计算机视觉技术?将手机的摄像头变成了一个搜索引擎
  3. 华为对边缘计算的思考与理解
  4. 【美国】谷歌重返机器人背后有何深意?
  5. 电视剧《都挺好》给我的启示
  6. SAP质量管理模块常见问题及解决方案
  7. 系列文章丨AlphaGo Zero为何如此备受瞩目?8位教授的独家讲解
  8. 《数学之美》第3章 统计语言模型
  9. 机器学习-情感分析-入门实战案例
  10. 这是我看过最全的工业机器人知识介绍 !