当前位置:   article > 正文

青云的机房组网方案(简单)

机房组网


                                        青云的机房组网方案(简单)

                                                                               1000ms                                                          131072K               

青云现在要将 nnn 个机房连成一个互相连通的网络。工程师小王设计出一个方案:通过在 nnn 个机房之间铺设 n−1n-1n1 条双向的光纤,将所有的机房连接。可以假设数据在两个机房之间的光纤传输需要 111 单位时间。每个机房 iii 有一个初始值 aia_iai,当两个机房的初始值之间互质时,我们认为这两个机房之间的传输性能是非常重要的。请帮小王计算出所有数值互质的机房对之间的传输时间之和。


输入格式

第一行输入一个正整数 nnn,第二行输入 nnn 个正整数 a1...ana_1...a_na1...an,表示 nnn 个机房的初始值。

接下来输入 n−1n-1n1 行,每行输入两个数 a,ba,ba,b,表示机房 aaa 和机房 bbb 之间有一条双向网络管道。

对于简单版本:n≤500n \leq 500n5001≤ai≤501 \leq a_i \leq 501ai50

对于中等版本:n≤10000n \leq 10000n100001≤ai≤5001 \leq a_i \leq 5001ai500

对于困难版本:n≤100000n \leq 100000n100000ai≤100000a_i \leq 100000ai100000


输出格式

输出一行,表示所有初始值互质的机房对的传输时间和。


样例输入
4
1 2 3 4
1 2
2 3
3 4
样例输出
8
提示信息

对于第一组样例,每一组初始值互质的机房对的传输时间如下:

(1,2)(1,2)(1,2)111

(1,3)(1,3)(1,3)222

(1,4)(1,4)(1,4)333

(2,3)(2,3)(2,3)111

(3,4)(3,4)(3,4)111

所以,所有初始值互质的机房对的传输时间和为 1+2+3+1+1=81+2+3+1+1=81+2+3+1+1=8

题意:如题。

题目链接:青云的机房组网方案(简单)

解题思路:题目说的很清楚,要让n台电脑都连通,也就是强连通图,告诉你每台电脑的初始值,只有当两台电脑互质时才计时,已经告诉你n-1条光纤,也就是这样的两台电脑之间传输耗时1单位,关键是要求出到其他点需要跨过几台电脑,标准的Floyd算法,将每个顶点k尝试插进i->j,使得i->k->j可行,求出来这个后就在循环一次,用辗转相除法判断是否互质。

刚开始想到Flyod算法是O(n^3)不敢用,因为我以为下面困难的数据也是本题的数据,结果一直不敢下手。

代码:

  1. //青云的机房组网方案(简单)
  2. //链接:http://nanti.jisuanke.com/t/11132
  3. #include
  4. #include
  5. #include
  6. using namespace std;
  7. const int N = 505;
  8. int a[N],path[N][N],n;
  9. int gcd(int a,int b) //辗转相除法
  10. {
  11. return b?gcd(b,a%b):a;
  12. }
  13. void dfs(int y,int x)
  14. {
  15. for(int j=1;j<=n;j++){
  16. if(x != j && y!=j && path[x][j]){ //设法从y->x的路径插点,构成y->j->x的路
  17. if(path[y][j]>0) path[y][j]=min(path[y][j],path[y][x]+path[x][j]);
  18. else path[y][j]=path[y][x]+path[x][j]; //未遍历过
  19. }
  20. }
  21. }
  22. int main()
  23. {
  24. int i,j,ans,x,y;
  25. while(~scanf("%d",&n)){
  26. for(i=0;i

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/842740
推荐阅读
相关标签
  

闽ICP备14008679号