为什么这里memset里的数一改就错了
  • 板块学术版
  • 楼主huchenming
  • 当前回复9
  • 已保存回复9
  • 发布时间2022/8/24 18:05
  • 上次更新2023/10/27 13:50:49
查看原帖
为什么这里memset里的数一改就错了
649764
huchenming楼主2022/8/24 18:05
#include<bits/stdc++.h>
#define inf 336860180
using namespace std;
int T,s,t,n,m,d[400][400];
int main()
{
    memset(d,20,sizeof(d));
    scanf("%d%d%d",&n,&m,&T);
    for(int i=1;i<=m;i++)
    {
     	int x,y,h;
	 	scanf("%d%d%d",&x,&y,&h);
     	d[x][y]=h;    
    }
    for(int k=1;k<=n;k++)
     for(int i=1;i<=n;i++)
      for(int j=1;j<=n;j++)
       d[i][j]=min(max(d[i][k],d[k][j]),d[i][j]);
    for(int i=1;i<=T;i++)
    {
      int x,y;scanf("%d%d",&x,&y);    
      if(d[x][y]!=inf) cout<<d[x][y]<<endl;
      else cout<<"-1"<<endl;
    }
    return 0;
}
2022/8/24 18:05
加载中...