http://115.28.138.223/view.page?gpid=T44

好像也没想象中的那么难,没办法,当初连个优先队列dij都不会写= =

在优先队列dij算法上加上相等的时候的处理就可以了。

#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<queue>
using namespace std; struct node
{
int pos,cost;
node(int a,int b):pos(a),cost(b){};
friend bool operator <(node x,node y)
{
return x.cost > y.cost;
}
};
struct edge
{
int to,cost;
edge(int a,int b):to(a),cost(b){};
};
vector<edge> v[];
bool vis[] = {};
int dis[],cost[],n,m; void dij()
{
memset(dis,0x3f,sizeof(dis));
memset(cost,0x3f,sizeof(cost));
dis[] = ;
cost[] = ;
priority_queue<node> q;
q.push(node(,));
while(!q.empty())
{
int now = q.top().pos;
if(vis[now]) continue;
vis[now] = ;
for(int i = ;i < v[now].size();i++)
{
int to = v[now][i].to,c = v[now][i].cost;
if(vis[to]) continue;
if(dis[to] > dis[now]+c)
{
dis[to] = dis[now]+c;
cost[to] = c;
q.push(node(to,dis[to]));
}
else if(dis[to] == dis[now]+c) cost[to] = min(cost[to],c);
}
}
} int main()
{
scanf("%d%d",&n,&m);
for(int i = ;i <= m;i++)
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
v[a].push_back(edge(b,c));
v[b].push_back(edge(a,c));
}
dij();
int ans = ;
for(int i = ;i <= n;i++) ans += cost[i];
printf("%d\n",ans);
return ;
}

最新文章

  1. python之生成器
  2. mysql-Federated存储方式,远程表,相当于sql server的linked server
  3. IIS7.5使用web.config设置伪静态的二种方法(转)
  4. php正则表达式 常用记录
  5. linux远程登录(Telnet、SSH)
  6. Jquery 在页面加载后执行的几种方式
  7. LeetCode Maximum Size Subarray Sum Equals k
  8. MySQL与Oracle 差异比较之六触发器
  9. 写实例学习html5 WebSocket
  10. Number Transformation
  11. flask 后台表单验证模块
  12. centos 添加epel、remi仓库和ELRepo仓库
  13. 妙用 `package.json` 快速 `import` 文件(夹)
  14. 正六边形网格化(Hexagonal Grids)原理与实现
  15. 获取服务器时间js代码
  16. linux系统下Nagios+rrdtool+Pnp4nagios监控环境的搭建
  17. 将远程git仓库里的指定分支拉取到本地(本地不存在的分支
  18. pytest+request 接口自动化测试
  19. AOP拦截器 表达式写法
  20. 每日英语:The Risks of Big Data for Companies

热门文章

  1. selenium爬取驾考宝典题目
  2. PostgreSQL基础操作
  3. 【5min+】你怎么穿着品如的衣服?IEnumerable AND IEnumerator
  4. Queue and deque
  5. 基于mysql的单据号生成(前缀+日期+自增id+后缀)
  6. Maven 基础环境搭建 项目依赖jar包导入
  7. Django admin的简单使用
  8. restframework 视图
  9. windows下配置tomcat的虚拟路径编译器为IDEA
  10. [bzoj2120] [洛谷P1903] 数颜色