64分,有四个点MLE,求好心人发发建议,改改代码
  • 板块P1807 最长路
  • 楼主Lycdeer
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/7/18 19:42
  • 上次更新2024/7/18 20:25:28
查看原帖
64分,有四个点MLE,求好心人发发建议,改改代码
1088782
Lycdeer楼主2024/7/18 19:42
#include<bits/stdc++.h>
using namespace std;
struct edge{
	int to,value;
};
struct node{
	int d,z;
};
vector<edge> l[1505];
queue<node> q;
int ans=-1;
int main(){
	int n,m; scanf("%d%d",&n,&m);
	for(int i=1;i<=m;i++){
		int u,v,w; scanf("%d%d%d",&u,&v,&w);
		l[u].push_back(edge{v,w});
	}
	q.push(node{1,0});
	while(!q.empty()){
		node k=q.front(); q.pop();
		if(k.d==n){
			ans=max(ans,k.z);
			continue;
		}
		for(int i=0;i<l[k.d].size();i++){
			q.push(node{l[k.d][i].to,l[k.d][i].value+k.z});
		}
	}
	cout<<ans;
	return 0;
}
2024/7/18 19:42
加载中...