UVa 821- Page Hopping(Floyd)
来源:互联网 发布:盐城办公软件培训 编辑:程序博客网 时间:2024/06/05 01:01
给出能相互到达的网页,输出在给出的网页中相互到达需要点击几次,首先离散化,然后用Floyd求少点击次数,枚举求平均点击次数。
#include<cstdio>#include<cstring>#include<algorithm>#include<map>using namespace std;const int maxn=110;const int inf=0x3f3f3f3f;int d[maxn][maxn];map<int,int> id;int main(){ int n,u,v,t=0; while(~scanf("%d%d",&u,&v)&&(u||v)){ memset(d,0x3f,sizeof d); id.clear(); n=0; if(!id.count(u)) id[u]=++n; if(!id.count(v)) id[v]=++n; d[id[u]][id[v]]=1; while(~scanf("%d%d",&u,&v)&&(u||v)){ if(!id.count(u)) id[u]=++n; if(!id.count(v)) id[v]=++n; d[id[u]][id[v]]=1; } 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(d[i][j],d[i][k]+d[k][j]); int sum=0; for(int i=1;i<=n;++i) for(int j=1;j<=n;++j) if(i!=j&&d[i][j]!=inf) sum+=d[i][j]; printf("Case %d: average length between pages = %.3lf clicks\n",++t,double(sum)/(n*(n-1))); } return 0;}
0 0
- 【UVA】821-Page Hopping(Floyd)
- UVa 821- Page Hopping(Floyd)
- UVA - 821 - Page Hopping(floyd算法)
- UVA 821 Page Hopping (Floyd)
- 821 - Page Hopping (Floyd)
- uva 821 Page Hopping 最短路floyd
- UVA Page Hopping(Floyd算法)
- Uva 821 - Page Hopping
- UVa 821 - Page Hopping
- uva821 Page Hopping( Floyd )
- UVA 821 Page Hopping(最短路)
- UVA 821(p379)----Page Hopping
- [floyd]UVa821 - Page Hopping
- UVA 821 - Page Hopping (flody应用)
- 【Uva 821】Page Hopping 翻译+题解
- Page Hopping UVA
- UVa 10801 Lift Hopping / floyd
- Lift Hopping - UVa 10801 Floyd
- First Blood.
- JS+AJAX(.ASHX) 实现用户登录
- Follow your heart
- hdu 5389 Zero Escape(dp类似背包)
- Candy
- UVa 821- Page Hopping(Floyd)
- Linux sed 命令
- 赋值和属性变量下划线
- [LeetCode]Linked List Cycle
- Android - SimpleAdapter适配器支持的组件及Listview模拟下载
- Codeforces Round #305 (Div. 2) 548D Mike and Feet(单调栈)
- 数据-二分图-F - Air Raid
- 数据结构与算法练习Java版练习1.9和1.10
- POJ-1326