希望更丰富的展现?使用Markdown
by Kevin__Z @ 2019-03-15 17:31:24
希望更丰富的展现?使用Markdown
```c
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
define maxx 200000
using namespace std;
int n,i,j,k;
double f[152][152],x[152],y[152],m[152],r1,r2=maxx;
double dis(int i,int j) {
return sqrt(pow(x[i]-x[j],2)+pow(y[i]-y[j],2));
}
int main() {
scanf("%d",&n);
for(i=1; i<=n; i++) scanf("%lf%lf",&x[i],&y[i]);
char c;
for(i=1; i<=n; i++) for(j=1; j<=n; j++) {
cin>>c;
scanf("%c",&c);
if(c=='1')f[i][j]=dis(i,j);
else f[i][j]=maxx;
}
for(k=1; k<=n; k++) for(i=1; i<=n; i++) for(j=1; j<=n; j++) {
if(i!=k&&j!=k&&i!=j&&f[i][j]>f[i][k]+f[k][j]) f[i][j]=f[i][k]+f[k][j];
}
for(i=1; i<=n; i++) {
for(j=1; j<=n; j++) {
if(f[i][j]!=maxx)m[i]=max(m[i],f[i][j]);
}
}
for(i=1; i<=n; i++) for(j=1; j<=n; j++) {
if(f[i][j]==maxx&&i!=j) {
r1=m[i]+m[j]+dis(i,j);
r2=min(r2,r1);
}
}
for(i=1; i<=n; i++)r2=max(m[i],r2);
printf("%.6lf",r2);
}
```
by dead_gun @ 2019-03-15 17:42:00
希望更丰富的展现?[使用Markdown](https://www.luogu.org/wiki/show?name=%E5%B8%AE%E5%8A%A9%EF%BC%9Amarkdown)
by rui_er @ 2019-03-15 18:00:06
希望更丰富的展现?使用Markdown
by 我不认识你 @ 2019-03-15 18:00:19
希望更丰富的展现?[使用Markdown](https://www.luogu.org/wiki/show?name=%E5%B8%AE%E5%8A%A9%EF%BC%9Amarkdown)
by rui_er @ 2019-03-15 18:01:03