POJ 2387.Til the Cows Come Home
北京大学暑期课程期末考试G题,(Orz太菜了10多个题就弄了三个,这个题感觉被阴了,但还是英文太差的锅)
最短路,Dijkstra的模板题
想说说现场赛(这个是假的)的感受,考前以为老师到时候给的PPT会有这个算法的代码版没想到只有中文简化形容版,本来四个小时的考试因为交换机的故障也缩短成了两个半小时,到这道题开始看的时候就有点着急犯蠢了(printf的时候想print dijkstra函数 没想到忘加括号了 - -,最蠢的是考后看了群里讨论才知道这个题输入有坑,输入有可能出现重边情况,要进行判重,存储边值更小的,对英文不好的人实在太不友善了,还是应该自习读一读题啊
不过dijkstra模板对着中文概述还是写对了,自己也挺高兴的~
题目链接
//g dijkstra
#include <iostream>
#include <cstring>
#define INF 999999
using namespace std;
int map[2005][2005];
int d[2005];//表示这个点到1的距离
int mark[2005];
int t,n;
int dijkstra()//最终可能要return dt
{while(1){ int minv = INF;int minindex = INF;for(int i=1;i<=t;i++){if(mark[i]==1){continue;}if(d[i]<minv){minv = d[i];minindex = i;}}if(minindex==INF){return d[t];}int u = minindex;mark[u] = 1;for(int v=1;v<=t;v++){if(mark[v]!=1&&map[u][v]!=0){d[v] = min(d[v],d[u]+map[u][v]);}}}
}
int main(void)
{for(int i=0;i<2005;i++){d[i] = INF;//初始化所有的距离为无穷 } memset(map,0,sizeof(map));memset(mark,0,sizeof(mark));scanf("%d%d",&n,&t);//从1到t的距离最小 for(int i=0;i<n;i++) {int a,b,c;scanf("%d%d%d",&a,&b,&c);if(map[a][b]==0){ map[a][b] = c;map[b][a] = c; }else{if(c<map[a][b]){map[a][b] = c;map[b][a] = c;}}}d[1] = 0;printf("%d\n",dijkstra());
}
POJ 2387.Til the Cows Come Home相关推荐
- POJ 2387 Til the Cows Come Home (最短路径 模版题 三种解法)
原题链接:Til the Cows Come Home 题目大意:有 个点,给出从 点到 点的距离并且 和 是互相可以抵达的,问从 到 的最短距离. 题目分析:这是一道典型的最短路径模版 ...
- Poj 2387 Til the Cows Come Home 迪杰斯特拉(普通+优化)
Til the Cows Come Home 迪杰斯特拉(普通+优化) 贝西在田里,想在农夫约翰叫醒她早上挤奶之前回到谷仓尽可能多地睡一觉.贝西需要她的美梦,所以她想尽快回来. 农场主约翰的田里有n( ...
- POJ 2387 Til the Cows Come Home
传送门:http://poj.org/problem?id=2387 这是最短路径问题,本题有重边,但是spfa能解决这个问题: 实现代码: SPFA: 1 #include <iostream ...
- POJ - 2387 Til the Cows Come Home
感觉一直写的dij堆优化都是假的,最短路板子spfa+ dij堆优化 SPFA #include<stdio.h> #include<string.h> #include< ...
- poj 2387 Til the Cows Come Home dijkstra
题意: 贝西在田里,想在农夫约翰叫醒她早上挤奶之前回到谷仓尽可能多地睡一觉.贝西需要她的美梦,所以她想尽快回来. 农场主约翰的田里有n(2<=n<=1000)个地标,唯一编号为1-n.地标 ...
- 【POJ】2387 Til the Cows Come Home
题目链接:http://poj.org/problem?id=2387 题意:求从1到n的最短路 题解:板子题.spfa. 代码: 1 #include<iostream> 2 #incl ...
- pku 2387 Til the Cows Come Home
原来一直没去学spfa,感觉只一个Dij已经很够用了,昨天翻了一下最短路,如果路径中存在负权的话,Dij也只能素手无策,这时spfa就大显身手了.. 实现过程: 我们用数组d记录每个结点的最短路径估计 ...
- A - Til the Cows Come Home POJ - 2387
A - Til the Cows Come Home POJ - 2387 最短路 #include<iostream> #include<cstdio> #include&l ...
- DIJSPFA-Til the Cows Come Home POJ - 2387
Til the Cows Come Home POJ - 2387 用dij和spfa写了做个对比,看了一篇很好的文章对这两个算法有了更好的理解**<Dijkstra+heap和SPFA的区别& ...
- Til the Cows Come Home(dijkstra)
题目连接: Til the Cows Come Home 题目: Bessie is out in the field and wants to get back to the barn to get ...
最新文章
- 问题解决:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
- 【Flask】sqlalchemy 排序
- 【视频教程】利用Excel轻松爬取网页上的数据
- 牛客网-Technology Tree
- mysql中条件查询加排序和索引的关系
- msysgit中文问题
- 非递归遍历二叉树-前序中序
- 深入浅出工厂设计模式
- 2017年电力职称计算机考试题,2017年职称计算机考试Excel试题(1)
- mapper [pos] of different type, current_type [geo_point], merged_type [ObjectMapper]
- 裸片IC的简单介绍以及裸片IC的封装设计
- pmp知识点(12)-项目采购管理
- pvr图片格式如何打开
- Salesforce Sales Cloud 零基础学习(四) Chatter
- 深入理解Docker ulimit
- Tmux 常用快捷键
- Vue.js+Layer表格数据绑定与实现更新
- OpenStack实例创建失败
- Spring Boot Redis 实现分布式锁,真香
- SLAM前端知识汇总