#include<iostream>
#include<algorithm>
#include<cmath>
#include<cstring>
#include<list>
#define inf 0x3f3f3f3f
using namespace std;
int n,m;
int start,dest;
int e[3305][3305];
int d[3305][3305];
int dist[1005];
int maxn[1005];
void init(){
for(int i=0;i<=n;i++){
for(int j=0;j<i;j++){
if(i==j){
e[i][j]=0;
}else{
e[j][i]=e[i][j]=inf;
}
}
dist[i]=0;
}
}
void Floy(){
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
d[i][j]=e[i][j];
}
}
for(int k=1;k<=n;k++){
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(d[i][j]>d[i][k]+d[k][j]){
d[i][j]=d[i][k]+d[k][j];
}
}
}
}
for(int i=1;i<=n;i++){
int cnt=0;
for(int j=1;j<=n;j++){
if(d[i][j]<=6){
cnt++;
}
}
printf("%d: %.2lf%\n",i,(cnt*1.0/n)*100);
}
}
int main(){
cin>>n>>m;
init();
for(int i=0;i<m;i++){
cin>>start>>dest;
e[start][dest]=e[dest][start]=1;
}
Floy();
return 0;
}
PTA数据结构与算法题目集(中文)7-7
最新推荐文章于 2022-05-23 18:28:04 发布