397. [USACO Oct09] 热浪

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

德克薩斯純樸的民眾們這個夏天正在遭受巨大的熱浪!!!他們的德克薩斯長角牛吃起來不錯,可是他們並不是很擅長生產富含奶油的乳製品。Farmer John此時以先天下之憂而憂,後天下之樂而樂的精神,身先士卒地承擔起向德克薩斯運送大量的營養冰涼的牛奶的重任,以減輕德克薩斯人忍受酷暑的痛苦。

FJ已經研究過可以把牛奶從威斯康星運送到德克薩斯州的路線。這些路線包括起始點和終點先一共經過T (1 <= T <= 2,500)個城鎮,方便地標號為1到T。除了起點和終點外地每個城鎮由兩條雙向道路連向至少兩個其它地城鎮。每條道路有一個通過費用(包括油費,過路費等等)。

考慮這個有7個城鎮的地圖。城鎮5是奶源,城鎮4是終點(括號內的數字是道路的通過費用)。

                              [1]----1---[3]-
/ \
[3]---6---[4]---3--[3]--4
/ / /|
5 --[3]-- --[2]- |
\ / / |
[5]---7---[2]--2---[3]---
| /
[1]------

經過路線5-6-3-4總共需要花費3 (5->6) + 4 (6->3) + 3 (3->4) = 10的費用。

給定一個地圖,包含C (1 <= C <= 6,200)條直接連接2個城鎮的道路。每條道路由道路的

起點Rs,終點Re (1 <= Rs <= T; 1 <= Re <= T),和花費(1 <= Ci <= 1,000)組

成。求從起始的城鎮Ts (1 <= Ts <= T)到終點的城鎮Te(1 <= Te <= T)最小的總費用。

題目名稱: heatwv

輸入格式:

* 第一行: 4個由空格隔開的整數: T, C, Ts, Te

* 第2到第C+1行: 第i+1行描述第i條道路。有3個由空格隔開的整數: Rs, Re和Ci

樣例輸入 (文件 heatwv.in):

7 11 5 4

2 4 2

1 4 3

7 2 2

3 4 3

5 7 5

7 3 3

6 1 1

6 3 4

2 4 3

5 6 3

7 2 1

輸入細節:

跟題目描述的地圖一致。

輸出格式:

* 第一行: 一個單獨的整數表示Ts到Te的最短路的長度。(不是費用麼?怎麼突然變直白了

——譯者注)數據保證至少存在一條道路。

樣例輸出 (文件 heatwv.out):

7

輸出細節:

5->6->1->4 (3 + 1 + 3)

唉 本人真是Dijkstra的忠实粉丝啊

这一道题的题面颓人啊   为什么是繁体字?投诉!

这一道题看起来好简单的样子  跑一遍Dijkstra   然后输出终点的dis就行了 啊(天呐 突然发现一道水题)

挑战5分钟AC

成功!

注意:是双向边

#include<bits/stdc++.h>
#define pa pair<int,int>
#define maxn 2505
using namespace std;
int n,m,s,t;
vector<int> v[maxn],w[maxn];
int vis[maxn],dis[maxn];
priority_queue<pa,vector<pa>,greater<pa> > q;
void Dijkstra()
{
memset(dis,0x3f,sizeof(dis));
dis[s]=;
q.push(make_pair(,s));
while(!q.empty())
{
int x=q.top().second;
q.pop();
if(vis[x])
continue;
vis[x]=;
for(int i=;i<v[x].size();i++)
{
int y=v[x][i];
int val=w[x][i];
if(dis[y]>dis[x]+val)
{
dis[y]=dis[x]+val;
q.push(make_pair(dis[y],y));
}
}
}
}
int main()
{
freopen("heatwvx.in","r",stdin);
freopen("heatwvx.out","w",stdout);
scanf("%d%d%d%d",&n,&m,&s,&t);
for(int i=;i<=m;i++)
{
int x,y,z;
scanf("%d%d%d",&x,&y,&z);
v[x].push_back(y);v[y].push_back(x);
w[x].push_back(z);w[y].push_back(z);
}
Dijkstra();
printf("%d\n",dis[t]);
return ;
}

总结心得:

熟能生巧 练的多了 自然就熟了(仿佛闻到了饭香味儿QAQ) 熟了就AC了(不应该是就可以吃了吗??QAQ)

cogs 397. [USACO Oct09] 热浪 Dijkstra的更多相关文章

  1. COGS 163 [USACO Mat07] 牛语

    COGS 163 [USACO Mat07] 牛语 输入文件:latin.in   输出文件:latin.out   简单对比 时间限制:1 s   内存限制:128 MB 奶牛们听说猪发明了一种秘密 ...

  2. Cogs 309. [USACO 3.2] 香甜的黄油 dijkstra,堆,最短路,floyd

    题目:http://cojs.tk/cogs/problem/problem.php?pid=309 309. [USACO 3.2] 香甜的黄油 ★★   输入文件:butter.in   输出文件 ...

  3. cogs 176. [USACO Feb07] 奶牛聚会 dijkstra

    176. [USACO Feb07] 奶牛聚会 ★☆   输入文件:sparty.in   输出文件:sparty.out   简单对比时间限制:3 s   内存限制:16 MB 译: zqzas N ...

  4. Dijkstra TYVJ 1031热浪 Dijkstra测试数据

    测试用邻接表写得Dijkstra 代码写得很烂. 描述 德克萨斯纯朴的民眾们这个夏天正在遭受巨大的热浪!!!他们的德克萨斯长角牛吃起来不错,可是他们并不是很擅长生產富含奶油的乳製品.Farmer Jo ...

  5. COGS 144. [USACO Dec07] 魅力手镯【01背包复习】

    144. [USACO Dec07] 魅力手镯 ★   输入文件:charm.in   输出文件:charm.out   简单对比 时间限制:1 s   内存限制:8 MB 译 by CmYkRgB1 ...

  6. COGS——T1588. [USACO FEB04]距离咨询

    http://cogs.pro/cogs/problem/problem.php?pid=1588 ★★   输入文件:dquery.in   输出文件:dquery.out   简单对比时间限制:1 ...

  7. 匈牙利算法 cogs 886. [USACO 4.2] 完美的牛栏

    886. [USACO 4.2] 完美的牛栏 ★★☆   输入文件:stall4.in   输出文件:stall4.out   简单对比时间限制:1 s   内存限制:128 MB USACO/sta ...

  8. 算法优化(动态规划):COGS 2009. [USACO Mar09]餐厅清扫

    2009. [USACO Mar09]餐厅清扫 ★★☆   输入文件:cleanup.in   输出文件:cleanup.out   简单对比时间限制:1 s   内存限制:256 MB [题目描述] ...

  9. Cogs 1435. [USACO NOV]金发姑娘和N头牛

    1435. [USACO NOV]金发姑娘和N头牛 ★★☆   输入文件:milktemp.in   输出文件:milktemp.out   简单对比时间限制:1 s   内存限制:256 MB [题 ...

随机推荐

  1. CF1166E The LCMs Must be Large

    CF1166E The LCMs Must be Large 构造趣题 正着推其实很不好推 不妨大力猜结论 如果两两集合都有交,那么一定可以 证明: 1.显然如果两个集合没有交,一定不可以 2.否则给 ...

  2. 第三章 通过java SDK 实现个性化智能合约的部署与测试

    想了解相关区块链开发,技术提问,请加QQ群:538327407 前提 已经部署好底层,外网可以正常请求访问. 正常流程 1.基础合约处理 https://fisco-bcos-documentatio ...

  3. httpClient Post例子,Http 四种请求访问代码 HttpGet HttpPost HttpPut HttpDelete

    httpclient post方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 //----1. HttpPost request = new HttpPost(ur ...

  4. Git的使用--如何将本地项目上传到Github(两种简单、方便的方法..)

    https://blog.csdn.net/u014135752/article/details/79951802 总结:其实只需要进行下面几步就能把本地项目上传到Github 1.在本地创建一个版本 ...

  5. js快速替换json里的key值

    需求是将b根据a的值替换对象中的key值 let a = ["code","name","date","font"]; ...

  6. promise 讲解

    Promise的出现  解决了 js 回调地狱得问题 回调地狱图 Promise解决回调地狱 是不是美观多了.. 实例化Promise时传入方法里的两个参数 resolve(成功的回调)和reject ...

  7. C语言动态内存

    动态分配内存的概述 在数组一章中,介绍过数组的长度是预先定义好的,在整个程序中固定不变,但是在实际的编程中,往往会发生这种情况,即所需内存空间取决于实际输入的数据,而无法预先确定.为了解决上述问题,c ...

  8. c#中索引器

    https://zhidao.baidu.com/question/59675980.html 不是必要的..相当于数学中的一个函数

  9. WPF实现软键盘

    wpf 实现一个软键盘, 先发个图: 工作有需要实现一个软键盘,本来想用windows自带的软键盘凑合凑合得了,又觉得那个软键盘太大了,所以自己实现了一个. 说一下实现的思路,其实没什么思路 界面就是 ...

  10. int32 无符号范围 -2147483648~2147483647

    int32 无符号范围 -2147483648~2147483647