求解 为神魔全RE?
查看原帖
求解 为神魔全RE?
435312
Security_Guard楼主2021/3/7 21:15
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
int n,m,q;
int cnt,f[50100];
int p[3000][3000];
int a,b,c;
struct bal{
	bool zt;
	int ti;
}t[50100];
int re() { 
    int x=0,f=1;char ch=getchar();
    while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
    while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}
    return x*f;
}
int main()
{
	cin>>n>>m;
	memset(p,0x3f,sizeof(p));
	for(int i=0;i<n;i++)
	cin>>t[i].ti;	
	for(int i=0;i<m;i++){

		a=re();b=re();c=re();
		p[a][b]=min(p[a][b],c);
		p[b][a]=min(p[a][b],c);
		p[i][i]=0;
	}
	q=re();
	for(int k=1;k<=q;k++){
		a=re();b=re();c=re();
		for(int i=0;i<n;i++){
			if(t[i].ti<=c){
				for(int j=0;j<n;j++)
				for(int o=0;o<n;o++)
				p[j][o]=min(p[j][i]+p[i][o],p[j][o]);
			}
			else break;
		}
		if(t[a].ti>c||t[b].ti>c||p[a][b]==0x3f3f3f3f)
		cout<<"-1"<<endl;
		else
		cout<<p[a][b]<<endl;
	}
	return 0;
}

为什moRE了,求大佬看一下

2021/3/7 21:15
加载中...