Six Degrees of Cowvin Bacon

2023-11-21 16:41
文章标签 six degrees cowvin bacon

本文主要是介绍Six Degrees of Cowvin Bacon,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

描述

奶牛最近一直在制作电影,所以他们已经准备好播放着名游戏“凯文培根六度”的变种。

游戏的工作原理是这样的:每只牛被认为是离开自己零度的距离(度)。如果两只鲜明的奶牛一起在电影里,那么每个人都被认为是一个离开另一个的“学位”。如果两只母牛从未合作过,而且已经与第三只牛共同工作,那么他们被认为是相距两度的(相当于他们一起工作的牛一度到另一只牛)牛)。这归功于一般情况。

N(2 <= N <= 300)牛有兴趣了解哪种牛与所有其他奶牛的平均分离度最小。当然不包括自己。母牛已经制作了M(1 <= M <= 10000)个电影,并保证每对母牛之间存在一些关系路径。

输入

*行1:两个空格分隔的整数:N和M

*行2..M + 1:每个输入行包含一组两个或更多空格分隔的整数,描述出现在单个影片中的牛。第一个整数是参与所描述的电影的牛的数量(例如,Mi); 随后的Mi整数告诉哪些奶牛是。

产量

第1行:单个整数,是任何奶牛最短平均分离度的100倍。

样品输入

4 2
3 1 2 3
2 3 4

样品输出

100

暗示

[牛3与所有其他奶牛合作,因此具有分离度:1,1和1 - 平均为1.00。]

代码

#include <iostream>
#include <cstdio>
using namespace std;
#define INF 100000000int M, N;
int dis[305][305], temp[305];int min(int x, int y)
{return x > y ? y : x;
}int main()
{int i, j, k;while(scanf("%d%d", &N, &M) != EOF){for(i = 1; i <= N; i++)             //初始化dis数组{for(j = 1; j <= N; j++){if(i == j)dis[i][j] = 0;elsedis[i][j] = INF;}}for(i = 0; i < M; i++)              //输入M部电影中每部涉及到的牛的编号{scanf("%d", &j);                //涉及到j头牛for(k = 0; k < j; k++){scanf("%d", &temp[k]);}for(int a = 0; a < j - 1; a++)  //每一头与其他牛的度为1;for(int b = a + 1; b < j; b++)dis[temp[a]][temp[b]] = dis[temp[b]][temp[a]] = 1;}for(i = 1; i <= N; i++)             //Floyd求解任意两点之间的距离{for(j = 1; j <= N; j++){for(k = 1; k <= N; k++)dis[j][k] = min(dis[j][k], dis[j][i] + dis[i][k]);}}int ans;ans = INF;for(i = 1; i <= N; i++)             //枚举每一头牛与其他牛的度之和{int dist = 0;for(j = 1; j <= N; j++){if(i != j)dist += dis[i][j];}if(ans > dist)                  //不断更新ans{ans = dist;}}printf("%d\n", ans * 100 / (N - 1));//先乘以100,避免精度缺失。}return 0;
}

测试截图

这里写图片描述

AC截图

这里写图片描述

这篇关于Six Degrees of Cowvin Bacon的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/403645

相关文章

【URAL】1057 Amount of Degrees 数位DP

传送门:【URAL】1057 Amount of Degrees 题目分析:将数转化成能达到的最大的01串,串上从右往左第i位为1表示该数包括B^i。 代码如下: #include <cstdio>#include <cstring>#include <algorithm>using namespace std ;typedef long long LL ;#de

Mac OSX 升级python six模块版本

问题描述: Mac系统下,使用sudo命令升级python six模块,会出现operation not permitted的错误提示 错误定位: http://stackoverflow.com/questions/29485741/unable-to-upgrade-python-six-package-in-mac-osx-10-10-2 http://www.

【Rust 日报】2020-11-04 bacon: 幕后代码检查工具

async-std v1.7.0 发布 增加了 tokio-03 的 flag , 可以很好地适配 Tokio 0.3 的 runtime。更新了一些依赖 https://github.com/async-rs/async-std/releases/tag/v1.7.0 bevy_tilemap:基于块的地形构造工具(tilemap) 用于游戏引擎 Bevy 中,支持多线程块,泛型 traits

宝塔面板安装时候报ImportError: No module named six 解决方法

宝塔面板安装报  ImportError: No module named six  解决方法   File "/usr/lib/python2.7/site-packages/socketio/base_manager.py", line 4, in <module>     import six ImportError: No module named six 解决方法:pip  inst

python之six模块的用法six.py2 six.py3

import six,sysprint(six.PY2) #python2结果为Trueprint(six.PY3) #python3结果为True

17年武汉大学网络赛—Divide by Six

题目链接: 点击打开链接 ; 第一篇博客啊... 题目意思大概是这样的,给出一个长为10^5的数,然后让你删掉其中某些数,使其为6的倍数(前缀0也要删去),求删除后所可能保留的最长的。 思路一:(大佬学长说的歪门邪道解法)        一个数是6的倍数,那么它肯定也是2和3的倍数。2的倍数很好判断末尾的数可以被2整除,3的倍数:所有位上的数值相加是3的倍数。

【记录】Python3| 将 PDF 转换成 HTML/XML(✅⭐pdfminer.six)

本文将会被汇总至 【记录】Python3|2024年 PDF 转 XML 或 HTML 的第三方库的使用方式、测评过程以及对比结果(汇总),更多其他工具请访问该文章查看。 注意!pdfminer.six 和 pdfminer3k 不是同一个!!! 文章目录 PDFMiner.six 使用体验与评估1 安装指南2 测试代码3 测试结果3.1 转 html 的结果3.2 转 xml

Design for Six Sigma Statistics

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。 http://blog.csdn.net/topmvp - topmvp THE STATISTICAL TOOL NECESSARY TO IDENTIFY AND SOLVE ANY DFSS PROBLEM Design for Six Sigma Statistics

导入from django.utils.six.moves.urllib import parse as urlparse报错

from django.utils.six.moves.urllib import parse as urlparse 改成 from urllib.parse import urlparse

python中导入utils.six.moves.urllib报错

1、Django3.0.3移除了six。 2.six可以单独安装:pip install six。另外,urllib 好像也独立出来了,引用时不需有前缀。 from django.utils.six.moves.urllib.request import urlopen from django.utils.six.moves.urllib.parse import urljoin 改为: