运行时错误?

P1396 营救

运行时错误:~~运行的时候出现了错误~~
by SSerxhs @ 2019-01-12 20:45:44


自己查查 ```cpp #include<bits/stdc++.h> #define ll long long #define inf 0x3f3f3f3f using namespace std; const int N=1e4+9; struct Edge { int nxt,to,w; }edge[N<<2]; int head[N],cnt; inline void add(int u,int v,int w) { edge[++cnt].nxt=head[u]; edge[cnt].to=v; edge[cnt].w=w; head[u]=cnt; } int n,m,s,t,vis[N],dis[N]; priority_queue<pair<ll,int> >q; inline void dijstra() { memset(dis,inf,sizeof(dis)); dis[s]=0;q.push(make_pair(dis[s],s)); while(!q.empty()) { int x=q.top().second;q.pop(); if(vis[x])continue;vis[x]=1; for(register int i=head[x];i;i=edge[i].nxt) if(dis[edge[i].to]>max(dis[x],edge[i].w)) { dis[edge[i].to]=max(dis[x],edge[i].w); q.push(make_pair(-dis[edge[i].to],edge[i].to)); } }return; } int main() { scanf("%d%d%d%d",&n,&m,&s,&t); for(register int u,v,w,i=1;i<=m;++i) { scanf("%d%d%d",&u,&v,&w); add(u,v,w);add(v,u,w); }dijstra(); printf("%d\n",dis[t]); return 0; } ```
by Qiuly @ 2019-01-12 20:54:46


> # 关于Spfa > ##### 它死了
by Qiuly @ 2019-01-12 20:55:33


学Dijkstra吧(逃
by yizimi远欣 @ 2019-01-12 21:00:09


+1
by Qiuly @ 2019-01-12 21:06:55


@[Qiuly](/space/show?uid=113190) 为什么要用优先队列啊
by yuyer @ 2019-01-13 07:46:46


@[愉快最厉害](/space/show?uid=36368) 优化啊
by Qiuly @ 2019-01-13 07:47:38


注意我是DJ不是SPfa
by Qiuly @ 2019-01-13 07:47:53


还有,这题不要二分答案啊
by Qiuly @ 2019-01-13 07:51:09


只是求通过的所有边中最大边最小是多少
by Qiuly @ 2019-01-13 07:51:44


| 下一页