记录编号 345638 评测结果 AAAAAAAA
题目名称 双服务点设置 最终得分 100
用户昵称 GravatarO(1) 是否通过 通过
代码语言 C++ 运行时间 0.015 s
提交时间 2016-11-11 13:02:21 内存使用 0.31 MiB
显示代码纯文本
#include<iostream>
#include<fstream>
#include<algorithm>
using namespace std;
int main()//直接暴力求解算了 
{
	ofstream fout("djsb.out");
	ifstream fin("djsb.in");
	int n,m,i,j,k,x,y,inf=99999999;
	fin>>n>>m;
	int c[n][n];
	for(i=0;i<n;i++)
	   for(j=0;j<n;j++)
	   if(i==j)   c[i][j]=0;
	   else    c[i][j]=inf;
	for(i=0;i<m;i++)
	{
		fin>>j>>k>>x;
		c[j][k]=x;
		c[k][j]=x;
	}
	for(k=0;k<n;k++)
	  for(i=0;i<n;i++)
	     for(j=0;j<n;j++)
	     if(c[i][j]>c[i][k]+c[k][j])
	       c[i][j]=c[i][k]+c[k][j];
	int t,mmin=inf,mmax=0,d,f;
	for(i=0;i<n;i++)
	   for(j=i+1;j<n;j++)
	   	{
		   mmax=0;
		   for(k=0;k<n;k++)
	   	  {
		   if(k==i||k==j)   continue;
		   t=min(c[i][k],c[j][k]);
		   if(t>mmax)
		   {
		   	mmax=t;
		   }
	   	  }
		  if(mmax<mmin)
		  {
		  	  mmin=mmax;
			  x=i;y=j;
		  }
		}
	fout<<x<<" "<<y<<endl;
}