http://acm.hdu.edu.cn/showproblem.php?pid=1535

水题

单向图,从1到P所有点,再从所有点回到1,问最小花费

先求一遍1的最短路,然后反向建图,再求一遍1的最短路

#include <iostream>
#include <queue>
using namespace std ;
const int INF=0xfffffff ;
struct node{
int s,t,v,nxt ;
}e[] ;
int n,cnt,head[],vis[],dis[] ;
int rs[],rt[],rv[] ;
void add(int s,int t,int v)
{
e[cnt].s=s ;
e[cnt].t=t ;
e[cnt].v=v ;
e[cnt].nxt=head[s] ;
head[s]=cnt++ ;
}
void spfa(int s)
{
for(int i= ;i<=n ;i++)
dis[i]=INF ;
dis[s]= ;
memset(vis,,sizeof(vis)) ;
vis[s]= ;
queue <int> q ;
q.push(s) ;
while(!q.empty())
{
int u=q.front() ;
q.pop() ;
vis[u]= ;
for(int i=head[u] ;i!=- ;i=e[i].nxt)
{
int tt=e[i].t ;
if(dis[tt]>dis[u]+e[i].v)
{
dis[tt]=dis[u]+e[i].v ;
if(!vis[tt])
{
vis[tt]= ;
q.push(tt) ;
}
}
}
}
}
int main()
{
int t ;
scanf("%d",&t) ;
while(t--)
{
cnt= ;
memset(head,-,sizeof(head)) ;
int q ;
scanf("%d%d",&n,&q) ;
for(int i= ;i<q ;i++)
{
scanf("%d%d%d",&rs[i],&rt[i],&rv[i]) ;
add(rs[i],rt[i],rv[i]) ;
}
int ans= ;
spfa() ;
for(int i= ;i<=n ;i++)
ans+=dis[i] ;
cnt= ;
memset(head,-,sizeof(head)) ;
for(int i= ;i<q ;i++)
add(rt[i],rs[i],rv[i]) ;
spfa() ;
for(int i= ;i<=n ;i++)
ans+=dis[i] ;
printf("%d\n",ans) ;
}
return ;
}

最新文章

  1. .NET Mvc中ViewBag、ViewData、TempData如何使用
  2. ActiveMQ的介绍及使用实例.
  3. Hadoop等软件常见运行问题及解决办法
  4. js,jquery获取浏览器信息
  5. ( 译、持续更新 ) JavaScript 上分小技巧(四)
  6. 0day漏洞是什么意思啊?
  7. Linux下Memcached-1.4.10安装
  8. IOS webView快照
  9. 8-11-Exercise
  10. CImageList使用简要说明
  11. HttpURLConnection传JSON数据
  12. jq之简单的表单验证
  13. HMC5883L地磁传感器驱动
  14. 迷宫问题-POJ 3984
  15. [mysql] 修复问题表Table &#39;.xxxx&#39; is marked as crashed and should be repaired
  16. C++ Addon Async 异步机制
  17. HDU 1160
  18. 20190312 Windows安装Kafka
  19. makefile中的shell编程注意点
  20. opencv-python教程学习系列6-用滑动条做调色板

热门文章

  1. Mybatis的CRUD案例
  2. mariadb10.1.13GTID实现主从复制
  3. C题:A Water Problem(dp||搜索)
  4. Mist 转移默认区块存储位置方法
  5. sqlite的事务和锁,很透彻的讲解 【转】
  6. CentOS6.5下Cloudera安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)
  7. 20145314郑凯杰《网络对抗技术》可选实验 shellcode注入与Return-to-libc攻击实验
  8. 20145311王亦徐 实验三 &quot;敏捷开发与XP实践&quot;
  9. target=&#39;_blank&#39; 安全漏洞
  10. Spring boot错误处理以及定制错误页面