Six Degrees of Cowvin Bacon POJ - 2139 弗洛伊德算法
2017-12-05 10:21
441 查看
题意是:
若看过同一场电影的人,则他们的亲密度为1,若两个人(a,b)没有看过同一场电影,且他们和第三个人(c)看过同一场电影,则他们的亲密度=a,c之间的亲密度加上b,c之间的亲密度。
求某个人到除他之外的所有人亲密度之和*100/(n-1)
思路:由于点数小于150,所以用弗洛伊德算法(n3复杂度)求某人到除他所有人的亲密度即可。
若看过同一场电影的人,则他们的亲密度为1,若两个人(a,b)没有看过同一场电影,且他们和第三个人(c)看过同一场电影,则他们的亲密度=a,c之间的亲密度加上b,c之间的亲密度。
求某个人到除他之外的所有人亲密度之和*100/(n-1)
思路:由于点数小于150,所以用弗洛伊德算法(n3复杂度)求某人到除他所有人的亲密度即可。
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int maxn=200; int g[maxn][maxn]; int a[maxn*maxn]; int main () { int n,m; scanf("%d%d",&n,&m); memset(g,0x3f,sizeof(g)); while(m--) { int t; scanf("%d",&t); for(int i=1;i<=t;i++) { scanf("%d",&a[i]); } for(int i=1;i<t;i++) { for(int j=i+1;j<=t;j++) { g[a[i]][a[j]]=1; g[a[j]][a[i]]=1; } } } for(int k=1;k<=n;k++) { for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { if(g[i][j]>g[i][k]+g[k][j]) { g[i][j]=g[i][k]+g[k][j]; } } } } int ans=0,minn=0x3f3f3f3f; /* for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { printf(" %d ",g[i][j]); } printf("\n"); }*/ for(int i=1;i<=n;i++) { ans=0; for(int j=1;j<=n;j++) { if(i!=j) { ans+=g[i][j]; } } ans=ans*100/(n-1); minn=min(minn,ans); } printf("%d\n",minn); }
相关文章推荐
- poj 2139 Six Degrees of Cowvin Bacon 最短路
- POJ 2139 Six Degrees of Cowvin Bacon
- poj 2139 Six Degrees of Cowvin Bacon (Floyd 算法)
- poj2139 Six Degrees of Cowvin Bacon
- POJ 2139 Six Degrees of Cowvin Bacon
- POJ 2139 Six Degrees of Cowvin Bacon(floyd两点间最短距离)
- POJ 2139 Six Degrees of Cowvin Bacon
- Six Degrees of Cowvin Bacon POJ - 2139 (floyd求最短路)
- A - Six Degrees of Cowvin Bacon POJ - 2139 最短路Floyd
- POJ 2139 Six Degrees of Cowvin Bacon 最短路
- POJ 2139 Six Degrees of Cowvin Bacon(floyd)
- AOJ -0189 Convenient Location && poj 2139 Six Degrees of Cowvin Bacon (floyed求任意两点间的最短路)
- POJ 2139 Six Degrees of Cowvin Bacon (floyd)
- POJ 2139 Six Degrees of Cowvin Bacon(最短路)
- POJ2139--Six Degrees of Cowvin Bacon
- POJ-2139-Six Degrees of Cowvin Bacon
- [POJ](2139)Six Degrees of Cowvin Bacon ---- 最短路径算法(Floyd)
- POJ:2139-Six Degrees of Cowvin Bacon
- poj 2139--Six Degrees of Cowvin Bacon
- Six Degrees of Cowvin Bacon.(POJ-2139)