90分求助,第十个点wa

P2136 拉近距离

不知道怎么说,反正挺神奇的 ``` #include<bits/stdc++.h> using namespace std; #define int long long const int maxn=100005; struct Edge{ int f,to,w; }edge[maxn]; int head[maxn],edgenum,n,m,d[maxn]; void add_edge(int from,int to,int w){ edge[++edgenum].f=from; edge[edgenum].to=to; edge[edgenum].w=w; //head[from]=edgenum; } signed main(){ cin>>n>>m; for(int i=1;i<=m;i++){ int u,v,w; cin>>u>>v>>w; add_edge(u,v,-w); } for(int i=1;i<=n;i++) d[i]=1e9+5;d[1]=0; for(int i=1;i<n;i++){ for(int j=1;j<=m;j++){ if(d[edge[j].f]+edge[j].w<d[edge[j].to]){ d[edge[j].to]=d[edge[j].f]+edge[j].w; } } } for(int j=1;j<=m;j++){ if(d[edge[j].f]+edge[j].w<d[edge[j].to]){ cout<<"Forever love"; return 0; } } if(d[n]>=50){cout<<"-"<<41;return 0;} cout<<d[n]; return 0; } ```
by Silence_World @ 2023-05-07 21:47:31


注意:题目求:他们之间可能的最短距离。小明或小红都可做为起点。
by liangqingjian @ 2023-10-08 12:21:12


|