问题描述

蒜厂要开年会了,所有的员工都要参加。
每两个员工之间都有一个亲密度。在同一个项目工作过的员工之间的亲密度为 1。如果 A 和 B、B 和 C 均在同一个项目中工作过,而 A 和 C 没有,那么 A 和 C 之间的亲密度为 1+1=2。
同理,如果 A 和 B 之间的亲密度为 x,B 和 C 之间的亲密度为 y,则 A 和 C 之间的一种 可能亲密度 为 x+y。两个人之间的 亲密度 为所有的 可能亲密度 之中的 最小值。
因为蒜厂里员工之间非常有爱,所以保证每两个员工之间都可以算出一个亲密度。
现在有一个名单,已知蒜厂在这一年一共进行过 M 个项目,N 名员工都想知道自己与其他所有员工的亲密度的平均值,现在你需要找出所有员工中,与其他所有员工 亲密度平均值 最小的员工,即和其他所有员工最亲密的一名员工,来担任这次年会的主持人。
输入格式
一行两个整数 N 和 M,(1≤M≤10000,2≤N≤300)。
接下来 M 行,表示 M 个项目名单,每行第一个整数表示参加这一个项目的员工人数,后面是这些员工的编号,所有员工的编号从 1 开始计数。
输出格式
一行一个整数,为最小的亲密度平均值乘 100 以后向下取整。
样例输入
4 2
3 1 2 3
2 3 4
样例输出
100


AC代码

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
using namespace std;
int G[320][320];
int INF = 0x3f3f3f3f;
int buf1[320];
int buf2[320];
int main() {memset(G,INF, sizeof(G));int n, m;cin >> n >> m;for (int i = 0; i < m; i++) {int t;cin >> t;for (int j = 0; j < t; j++) {cin >> buf1[j];buf2[j] = buf1[j];}for (int x = 0; x < t; x++) {for (int y = 0; y < t; y++) {if(x!=y)G[buf1[x]][buf2[y]] = 1;}}}for (int k = 1; k <= n; k++) {for (int i = 1; i <= n; i++) {for (int j = 1; j <= n; j++) {if ((i!=j)&&(G[i][j] > G[i][k] + G[k][j]))G[i][j] = G[i][k] + G[k][j];}}}double MINV=INF;for (int i= 1; i<= n; i++) {double sumn = 0;for (int j = 1; j<= n; j++) {if(i!=j)sumn += G[i][j];}MINV = min(sumn/(n-1), MINV);}cout << (int)(MINV * 100);return 0;
}

计蒜客习题:蒜厂年会相关推荐

  1. 计蒜客习题:幼儿园买玩具

    问题描述 蒜厂幼儿园有 n 个小朋友,每个小朋友都有自己想玩的玩具.身为幼儿园园长的你决定给幼儿园买一批玩具,由于经费有限,你只能买 m 个玩具.已知玩具商店一共卖 k 种玩具,编号为 1,2,3,- ...

  2. 计蒜客习题:新年礼物

    问题描述 新年了,蒜厂 BOSS 要给小蒜头们发新年礼物,其中有一份神秘大奖,但却不知道应该发给谁.于是,蒜厂 BOSS 打算让大家玩一个游戏. 一共有 n 个字符串排成一排,蒜头需要从中按顺序选取一 ...

  3. 计蒜客 15503 百度的年会游戏 题解

    题意 百度年会盛况空前,每个部门的年会活动也是非常有趣.某部门的年会中进行了一个有趣的游戏:一张方桌上有四边,每边可以坐一人,每人面前摆放一排长方形木块.我们一次给四边标号,分别为玩家 1.2.3.4 ...

  4. 【计蒜客习题】消除字符串

    问题描述 蒜头君喜欢中心对称的字符串,即回文字符串.现在蒜头君手里有一个字符串 SS,蒜头君每次都会进行这样的操作:从 SS 中挑选一个回文的子序列,将其从字符串 SS 中去除,剩下的字符重组成新的字 ...

  5. 计蒜客习题:恋爱纪念日(C语言)

    蒜头君和花椰妹谈恋爱啦.祝福他们吧. 蒜头君想知道第他们的第 100100 天,200200 天 ... 纪念日.输入格式输入 44 个整数 y,m,d,ky,m,d,k,表示他们在一起的日期,保证是 ...

  6. 计蒜客习题:迷阵突围

    问题描述 蒜头君陷入了坐标系上的一个迷阵,迷阵上有 n 个点,编号从 1 到 n.蒜头君在编号为 1 的位置,他想到编号为 n 的位置上.蒜头君当然想尽快到达目的地,但是他觉得最短的路径可能有风险,所 ...

  7. 计蒜客习题:骑车比赛

    问题描述 蒜头君准备去参加骑车比赛,比赛在 n 个城市间进行,编号从 1 到 n.选手们都从城市 1 出发,终点在城市 n. 已知城市间有 m 条道路,每条道路连接两个城市,注意道路是双向的.现在蒜头 ...

  8. 计蒜客习题:帕吉的肉钩

    问题描述 在 DotA 游戏中,帕吉的肉钩是很多英雄最害怕的东西.钩子由连续若干段的等长金属棒制成. 现在帕吉对钩子由一些操作: 我们将金属棒 1~n 依次编号,帕吉可以把编号 x~y 的金属棒变成铜 ...

  9. 计蒜客习题:修建大桥

    问题描述 蒜头君来到一个由 n 个小岛组成的世界,岛与岛之间通过修建桥,来让岛上的居民可以去其他的小岛.已知已经修建了 m 座桥,居民们想让蒜头君帮忙计算,最少还要在修建几座桥,居民们才能去所有的岛. ...

最新文章

  1. MathWorks的AI之路:面向工业场景,打通开发到部署的全链路
  2. python保留字的基本含义-python 33个保留字是什么意思
  3. 对信噪比SNR、EbN0、EsN0的个人详细理解
  4. 数据库抽象层 PDO
  5. 文巾解题 679. 24 点游戏
  6. source 导入大批量sql文件的方法
  7. 【Java从入门到头秃专栏 】(一)学在Java语法之前
  8. 安卓TableLayout表格布局
  9. gnu java_【Java学习笔记】修饰符
  10. 全网首发:LINUX OpenCV编译java/jar版本注意事项
  11. Atitit.数据库新特性战略规划 mssql sql server 2008 SQL2012 SQL2014
  12. 数学分析教程(科大)——2.1笔记+习题
  13. 【程序】STM32F407VE单片机驱动两片TJA1050 CAN收发器并进行双CAN通信
  14. 用计算机怎么计算税率表,个税税率表计算器
  15. 解决方案(.sln)文件
  16. 将vscode打造为jetbrains主题
  17. 使用朋也社区搭建自己的社区网站就是这么简单~~
  18. Python 用于电路课程
  19. Spring高级四十九讲笔记
  20. 矩阵乘法分治法c语言,分治法举例之矩阵乘法

热门文章

  1. Android 内存优化——常见内存泄露及优化方案
  2. Windows10下安装VS2015和Caffe
  3. debconf-set-selections mysql_在Ubuntu上的MySQL脚本安装
  4. Cookie重名问题处理
  5. 基于战舰V3的4.3寸电容触摸屏
  6. IT服务管理之能力管理
  7. Redis数据结构Hash应用场景-存储商品、购物车、淘宝短链接、分布式Session、用户注册、发微博功能
  8. ExtJs自学教程(2):从DOM看EXTJS
  9. 转 javascip学习笔记
  10. Springboot 整合Websocket+Stomp协议+RabbitMQ做消息代理 实例教程