本来我写的对的

我就多手写了个

ios::sync_with_stdio(false);

我程序里面用了cin 还有scanf 本来想偷偷懒

我就说 我查了半天错 根本找不到的啊...

后来交了几次 发现一直有RE 才发现...... 我好笨

//最短路 dijkstral
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = ;
const ll INF = ;
typedef pair<ll ,int> pli;
struct node
{
int to,cost;
node(int t,int c):to(t),cost(c){}
bool operator < (const node & a)const {
return cost > a.cost;
}
};
vector<node> E[maxn];
ll d[maxn];
priority_queue<pli,vector<pli>,greater<pli> > Q; int main()
{ int n,m,st;
cin>> n>>m>>st;
for(int i=;i<=m;i++)
{
int x,y,v;
scanf("%d %d %d",&x, &y ,&v);
E[x].push_back({y,v});
}
for(int i=;i<=n;i++)
{
d[i]=INF;
}
d[st] = ;
Q.push({,st});
while ( Q.size() )
{
pli now = Q.top();Q.pop();
ll cost = now.first;
int p=now.second;
if(cost >= INF)
continue;
for(int i=;i<E[p].size();i++)
{
int v = E[p][i].to;
if(d[v] > cost + E[p][i].cost)
{
d[v] = cost + E[p][i].cost;//更新最短路;
Q.push({d[v],v});
}
}
}
for(int i=;i<=n;i++)
{
if(i!= n)
cout<<d[i]<<" ";
else
cout<<d[i];
}
cout<<endl; }

最新文章

  1. Python学习Day2笔记(集合和文件操作)
  2. android tab选项卡的使用
  3. iscrolljs 看API 回顾以前开发中失误
  4. shopex最新版前台一处想不到的SQL注入漏洞
  5. WinDbg 命令集锦
  6. zoj1665 dij变形
  7. 详解 Qt 线程间共享数据(用信号槽方式)
  8. React的一个简单示例
  9. 如何做到尽可能不使用庞大的jQuery
  10. mybatis系列-06-输入映射
  11. mysql的优化措施,从sql优化做起
  12. LinQ to SQL 查询
  13. Hibernate 多表关联映射- Hibernate中使用的集合类型(set,list,array,bag,map)
  14. v9 调用模型中新增的字段
  15. sqoop将mysql连表查询结果导入hdfs文件
  16. Java设计模式迭代器
  17. Oracle,cast函数
  18. nginx反向代理与Real-IP和X-Forwarded-For.txt
  19. Message对象
  20. 富文本编辑器 CKeditor 配置使用

热门文章

  1. sencha touch 入门系列 (三)sencha touch 项目创建
  2. 310实验室 Linux 软件安装常见问题
  3. mariadb安装配置
  4. php最全基础,数组,函数,超全局变量,时间,回话,文件,php操作mysql
  5. Oracle在linux下命令行无法使用退格键退格,无法使用上下键切换历史命令的解决办法
  6. SQL----&gt;mySQl卸载for mac
  7. android中的验证码倒计时
  8. SQL基础--查询之四--集合查询
  9. Mybatis 创建Configuration对象
  10. t检验&amp;z检验学习[转载]