当前位置: 首页 > news >正文

【GPLT 二阶题目集】L2-044 大众情人

人与人之间总有一点距离感。我们假定两个人之间的亲密程度跟他们之间的距离感成反比,并且距离感是单向的。例如小蓝对小红患了单相思,从小蓝的眼中看去,他和小红之间的距离为 1,只差一层窗户纸;但在小红的眼里,她和小蓝之间的距离为 108000,差了十万八千里…… 另外,我们进一步假定,距离感在认识的人之间是可传递的。例如小绿觉得自己跟小蓝之间的距离为 2,则即使小绿并不直接认识小红,我们也默认小绿早晚会认识小红,并且因为跟小蓝很亲近的关系,小绿会觉得自己跟小红之间的距离为 1+2=3。当然这带来一个问题,如果小绿本来也认识小红,或者他通过其他人也能认识小红,但通过不同渠道推导出来的距离感不一样,该怎么算呢?我们在这里做个简单定义,就将小绿对小红的距离感定义为所有推导出来的距离感的最小值。

输入格式:

输入在第一行中给出一个正整数 N(≤500),为总人数。于是我们默认所有人从 1 到 N 编号。

随后 N 行,第 i 行描述了编号为 i 的人与其他人的关系,格式为:

性别 K 朋友1:距离1 朋友2:距离2 …… 朋友K:距离K

其中 性别 是这个人的性别,F 表示女性,M 表示男性;K(<N 的非负整数)为这个人直接认识的朋友数;随后给出的是这 K 个朋友的编号、以及这个人对该朋友的距离感。距离感是不超过 10^6 的正整数。

题目保证给出的关系中一定两种性别的人都有,不会出现重复给出的关系,并且每个人的朋友中都不包含自己。

输出格式:

第一行给出自身为女性的“大众情人”的编号,第二行给出自身为男性的“大众情人”的编号。如果存在并列,则按编号递增的顺序输出所有。数字间以一个空格分隔,行首尾不得有多余空格。

输入样例:

6
F 1 4:1
F 2 1:3 4:10
F 2 4:2 2:2
M 2 5:1 3:2
M 2 2:2 6:2
M 2 3:1 2:5

输出样例:

2 3
4

#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;const int N = 510;
//MAX表示无限大,其值不能太大也不能太小
//太小影响距离计算,太大可能导致距离数值越界变负数
const int MAX = 0x3f3f3f3f;
//const int MAX = 1e6 + 10; //测试点3运行错误(万恶的21分!!!)
char sex[N]; //性别
int dp[N][N]; //dp[i][j]指i在j眼中的距离感(要求最小)class node
{
public:int num;int dist;
};
vector<node> m, f; //男性,女性异性缘的倒数bool cmp(node a, node b)
{if (a.dist != b.dist)return a.dist < b.dist;return a.num < b.num;
}int main()
{int n, k, a, b; cin >> n;for (int i = 1; i <= n; i++) //距离感初始化for (int j = 1; j <= n; j++)if (i == j)dp[i][j] = 0;elsedp[i][j] = MAX;for (int i = 1; i <= n; i++) //获取性别和距离感{cin >> sex[i] >> k;while (k--){scanf("%d:%d", &a, &b);dp[a][i] = b;}}for (int x = 1; x <= n; x++) //Floyd算法for (int i = 1; i <= n; i++)for (int j = 1; j <= n; j++)dp[i][j] = min(dp[i][j], dp[i][x] + dp[x][j]);for (int i = 1; i <= n; i++) //获取异性中的最大距离感{node temp = { i,0 };for (int j = 1; j <= n; j++){if (sex[i] != sex[j] && dp[i][j] > temp.dist)temp.dist = dp[i][j];}if (sex[i] == 'M')m.push_back(temp);elsef.push_back(temp);}sort(m.begin(), m.end(), cmp);sort(f.begin(), f.end(), cmp);cout << f[0].num;for (int i = 1; i < f.size(); i++){if (f[i].dist == f[0].dist)cout << " " << f[i].num;elsebreak;}cout << endl << m[0].num;for (int i = 1; i < m.size(); i++){if (m[i].dist == m[0].dist)cout << " " << m[i].num;elsebreak;}return 0;
}

 注意事项:

多源最短路径,且N值较小,用弗洛伊德算法,注意注意无穷的数值设置即可。

如有问题,欢迎提出。

相关文章:

【GPLT 二阶题目集】L2-044 大众情人

人与人之间总有一点距离感。我们假定两个人之间的亲密程度跟他们之间的距离感成反比&#xff0c;并且距离感是单向的。例如小蓝对小红患了单相思&#xff0c;从小蓝的眼中看去&#xff0c;他和小红之间的距离为 1&#xff0c;只差一层窗户纸&#xff1b;但在小红的眼里&#xf…...

SpringBoot整合(二)MyBatisPlus技术详解

MyBatisPlus详解 一、标准数据层开发 MyBatisPlus&#xff08;简称MP&#xff09;是基于MyBatis框架基础上开发的增强型工具&#xff0c;旨在简化开发、提高效率 MyBatisPlus的官网为:https://mp.baomidou.com/ 1.1 标准CRUD 1.2 新增 int insert (T t)T:泛型&#xff0c…...

导入importk8s集群,添加node节点,rancher agent,Rancher Agent设置选项

curl方式&#xff1a; Rancher在每个节点上部署代理以与节点通信。 此页面描述了可以传递给代理的选项&#xff0c;要使用这些选项&#xff0c;您需要采用创建自定义集群 &#xff0c;并在docker run添加节点时将选项添加到生成的命令中。 常规选项 参数环境变量描述—serve…...

C++11--右值引用与移动语义

目录 基本概念 左值与右值 左值引用与右值引用 右值引用的使用场景和意义 左值引用的使用场景 右值引用和移动语义 移动构造和拷贝构造的区别 编译器的优化 移动赋值和赋值运算符重载的区别 右值引用的其他应用场景 完美转发 万能引用 完美转发保持值属性 完美转…...

Python SQLAlchemy入门教程

本文将以Mysql举例&#xff0c;介绍sqlalchemy的基本用法。其中&#xff0c;Python版本为2.7&#xff0c;sqlalchemy版本为1.1.6。 一. 介绍 SQLAlchemy是Python中最有名的ORM工具。 关于ORM&#xff1a; 全称Object Relational Mapping&#xff08;对象关系映射&#xff0…...

你是真的“C”——操作符详解【下篇】+整形提升+算术转换

你是真的“C”——操作符详解下篇&#x1f60e;前言&#x1f64c;操作符详解【上篇】内容&#xff1a;操作符详解【下篇】内容&#xff1a;1、 条件操作符2、逗号表达式&#xff1a;3、下标引用、函数调用和结构成员3、访问一个结构的成员表达式求值1、隐式类型转换&#xff1a…...

文本匹配SimCSE模型代码详解以及训练自己的中文数据集

前言 在上一篇博客文本匹配中的示例代码中使用到了一个SimCSE模型&#xff0c;用来提取短文本的特征&#xff0c;然后计算特征相似度&#xff0c;最终达到文本匹配的目的。但是该示例代码中的短文本是用的英文短句&#xff0c;其实SimCSE模型也可以用于中文短文本的特征提取&a…...

Biotin-PEG-FITC 生物素聚乙二醇荧光素;FITC-PEG-Biotin 科研用生物试剂

结构式&#xff1a; ​Biotin-PEG-FITC 生物素聚乙二醇荧光素 英文名称&#xff1a;Biotin-PEG-Fluorescein 中文名称&#xff1a;生物素聚乙二醇荧光素 外观&#xff1a;黄色液体、半固体或固体&#xff0c;取决于分子量。 溶剂&#xff1a;溶于大部分有机溶剂&#xff0c;…...

FISCO BCOS 搭建区块链,在SpringBoot中调用合约

一、搭建区块链 使用的是FISCO BCOS 和 WeBASE-Front来搭建区块链&#xff0c;详细教程&#xff1a; https://blog.csdn.net/yueyue763184/article/details/128924144?spm1001.2014.3001.5501 搭建好能达到下图效果即可&#xff1a; 二、部署智能合约与导出java文件、SDK证…...

面试官:int和Integer有什么区别?

回答思路&#xff1a; 原始数据类型和包装类介绍 主要区别&#xff08;数据使用内存&#xff09; 自动装箱、自动拆箱机制和实践原则 回答总结&#xff1a; int 是8种基本数据类型&#xff08;byte、boolean、char、short、int、long、float、double&#xff09;之一&#xff…...

MFC常用技巧

MFC常用技巧1、句柄MFC中如何获取窗口的句柄2、字符串CString转char*Unicode下char *转换为CString3、Visual C 64 位迁移的常见问题&#xff08;数据类型、指针类型的长度问题&#xff09;4、c - 将_beginthread返回的uintptr_t转换为HANDLE是否安全1、句柄 MFC中如何获取窗口…...

C++ —— 多态

目录 1.多态的概念 2.多态的定义及实现 2.1构成多态的两个硬性条件 2.2虚函数的重写 2.3override和final 3.抽象类 3.1接口继承和实现继承 4.多态原理 4.1虚函数表 4.2原理 4.3静态绑定和动态绑定 5.单继承和多继承体系的虚函数表 5.1单继承体系的虚函数表 5.2多继…...

java agent设计开发概要

agent开发设计 agent 开发的一些心得&#xff0c;适合熟悉agent或者有agent开发需求的同学 1 有个基础的agent&#xff0c;是java 标准的agent。这是agent代码入口 2 设计包结构&#xff0c; 基础agent agent下有plugin,加载plugin可以自己定义一个类加载器 plugin&#xff1…...

node.js笔记-模块化(commonJS规范),包与npm(Node Package Manager)

目录 模块化 node.js中模块的分类 模块的加载方式 模块作用域 向外共享模块作用域中的成员 向外共享成员 包与npm&#xff08;Node package Manager&#xff09; 什么是包&#xff1f; 包的来源 为什么需要包&#xff1f; 查找和下载包 npm下载和卸载包命令 配置np…...

Linux 磁盘坏块修复处理(错误:read error: Input/output error)

当磁盘出现坏块时&#xff0c;你对所关联的文件进行读取时&#xff0c;一般会出现 read error: Input/output error 这样的错误。 反过来讲&#xff0c;当你看到 read error: Input/output error 这种错误时&#xff0c;很大可能就是磁盘出现了坏块问题。 解决步骤&#xff1a…...

API 面试四连杀:接口如何设计?安全如何保证?签名如何实现?防重如何实现?

下面我们就来讨论下常用的一些API设计的安全方法&#xff0c;可能不一定是最好的&#xff0c;有更牛逼的实现方式&#xff0c;但是这篇是我自己的经验分享. 一、token 简介 Token&#xff1a;访问令牌access token, 用于接口中, 用于标识接口调用者的身份、凭证&#xff0c;减…...

操作系统题目收录(六)

1、某系统采用基于优先权的非抢占式进程调度策略&#xff0c;完成一次进程调度和进程切换的系统时间开销为1us。在T时刻就绪队列中有3个进程P1P_1P1​、P2P_2P2​和P3P_3P3​&#xff0c;其在就绪队列中的等待时间、需要的CPU时间和优先权如下表所示。若优先权值大的进程优先获…...

2023年十款开源测试开发工具推荐!

今天为大家奉献一篇测试开发工具集锦干货。在本篇文章中&#xff0c;将给大家推荐10款日常工作中经常用到的测试开发工具神器&#xff0c;涵盖了自动化测试、性能压测、流量复制、混沌测试、造数据等。 1、AutoMeter-API 自动化测试平台 AutoMeter 是一款针对分布式服务&…...

MySQL慢查询分析和性能优化

1 背景我们的业务服务随着功能规模扩大&#xff0c;用户量扩增&#xff0c;流量的不断的增长&#xff0c;经常会遇到一个问题&#xff0c;就是数据存储服务响应变慢。导致数据库服务变慢的诱因很多&#xff0c;而RD最重要的工作之一就是找到问题并解决问题。下面以MySQL为例子&…...

C++学习笔记(四)

组合、继承。委托&#xff08;类与类之间的关系&#xff09; 复合 queue类里有一个deque&#xff0c;那么他们的关系叫做复合。右上角的图表明复合的概念。上图的特例表明&#xff0c;queue中的功能都是通过调用c进行实现&#xff08;adapter&#xff09;。 复合关系下的构造和…...

【4】深度学习之Pytorch——如何使用张量处理时间序列数据集(共享自行车数据集)

表格数据 表格中的每一行都独立于其他行&#xff0c;他们的顺序页没有任何关系。并且&#xff0c;没有提供有关行之前和行之后的列编码信息。 表格类型的数据是指通过表格的形式表示的数据&#xff0c;它以行和列的方式组织数据。表格中的每一行代表一个数据项&#xff0c;每…...

mulesoft MCIA 破釜沉舟备考 2023.02.10.01

mulesoft MCIA 破釜沉舟备考 2023.02.10.01 1. What is a defining charcateristic of an integration-Platform-as-a-Service(iPaaS)?2. An application deployed to a runtime fabric environment with two cluster replicas is designed to periodically trigger of flow f…...

干货 | PCB拼板,那几条很讲究的规则!

拼板指的是将一张张小的PCB板让厂家直接给拼做成一整块。一、为什么要拼板呢&#xff0c;也就是说拼板的好处是什么&#xff1f;1.为了满足生产的需求。有些PCB板太小&#xff0c;不满足做夹具的要求&#xff0c;所以需要拼在一起进行生产。2.提高SMT贴片的焊接效率。只需要过一…...

笔试题-2023-思远半导体-数字IC设计【纯净题目版】

回到首页:2023 数字IC设计秋招复盘——数十家公司笔试题、面试实录 推荐内容:数字IC设计学习比较实用的资料推荐 题目背景 笔试时间:2022.08.20应聘岗位:数字IC设计工程师笔试时长:90min笔试平台:牛客网题目类型:填空题(2道),不定项选择题(3道),单选题(2道),问…...

canvas根据坐标点位画图形-canvas拖拽编辑单个图形形状

首先在选中图形的时候需要用鼠标右击来弹出选择框&#xff0c;实现第一个编辑节点功能 在components文件夹下新建右键菜单 RightMenu文件&#xff1a; <template><div v-show"show" class"right-menu" :style"top:this.ypx;left:this.xpx…...

JavaEE 初阶 — 确认应答机制

文章目录确认应答机制&#xff08;安全机制&#xff09;1 什么是后发先至问题1 如何解决后发先至问题确认应答机制&#xff08;安全机制&#xff09; 确认应答 是实现可靠传输的最核心机制。 这里指的 可靠传输 不是说 100% 可以把消息发给接收方&#xff0c;而是尽力而为&…...

0207 事件

事件监听事件监听版本事件类型事件概念事件在编程时系统内发生的动作或者发生的事情例子点击按钮鼠标经过拖拽鼠标事件监听&#xff08;注册事件&#xff0c;绑定事件&#xff09;让程序员检测是否有事件产生&#xff0c;一旦有事件触发&#xff0c;就立即调用一个函数做出响应…...

SpringBoot整合Swagger

目录 一、swagger介绍 二、springboot集成swagger 1、创建一个springboot-web项目 2、导入相关依赖 3、编写一个Hellow工程 4、配置swagger --->config 5、启动springboot工程 6、配置swagger信息 7、配置swagger扫描接口 8、如何设置Swagger在生产环境中使用&…...

20230210英语学习

Why Do So Many Cats Have White ‘Socks’ on Their Paws? 为什么好多猫咪脚上都“穿着白袜子”&#xff1f; If you see a house cat, the odds are high that it will have white paws, a look that many owners affectionately call "socks."But socks are rar…...

【图像处理OpenCV(C++版)】——4.5 全局直方图均衡化

前言&#xff1a; &#x1f60a;&#x1f60a;&#x1f60a;欢迎来到本博客&#x1f60a;&#x1f60a;&#x1f60a; &#x1f31f;&#x1f31f;&#x1f31f; 本专栏主要结合OpenCV和C来实现一些基本的图像处理算法并详细解释各参数含义&#xff0c;适用于平时学习、工作快…...

清新网站模板/关键词优化排名哪家好

前些日子写了个拦截器里面获取Spring对象的&#xff0c;写的个方法是需要 request的&#xff0c;今天需要搞个线程&#xff0c;而且获取不到 request了&#xff0c;再加上获取 request的方法也不通用&#xff0c;这里来写个通用的。 SpringContext 对象的获取方式有三种 1.从…...

如何给网站做关键字/抖音营销推广方案

GCD的基本使用 一、主队列介绍 主队列&#xff1a;是和主线程相关联的队列&#xff0c;主队列是GCD自带的一种特殊的串行队列&#xff0c;放在主队列中得任务&#xff0c;都会放到主线程中执行。提示&#xff1a;如果把任务放到主队列中进行处理&#xff0c;那么不论处理函数是…...

自助网站开发/seo属于技术还是营销

作者&#xff08;本文内容来源&#xff09;&#xff1a;Think Like a Data Storyteller workshop翻译&#xff1a;王威力 &#xff1b;校对&#xff1a;白静本文约1800字&#xff0c;建议阅读5分钟。本文介绍了新手数据讲师所犯的最常见的错误&#xff0c;以及如何改正它们。图…...

衡水网站建立要多少钱/掉发脱发严重是什么原因

转载自&#xff1a;点击打开链接https://www.2cto.com/kf/201710/692967.htmlAndroid Studio 3.0 升级编译错误分析&#xff0c;今天Google推送了Android Studio 3.0的升级。升级完了以后&#xff0c;AS要求将gradle tools升级到3.0.0 classpath com.android.tools.build:gradl…...

福安建设厅网站/合肥关键词排名技巧

为什么80%的码农都做不了架构师&#xff1f;>>> 官网&#xff1a;http://hibernate.org/orm/Hiberante对象关系&#xff1a;http://blog.csdn.net/u013806366/article/details/52092735转载于:https://my.oschina.net/zhxm/blog/893701...

wordpress+下载媒体库/广东疫情最新消息

基于LoadRunner的Web考试系统性能测试与优化中国农学通报 2014,30(34):250-256Chinese Agricultural Science Bulletin基于LoadRunner的Web考试系统性能测试与优化陈孟婕&#xff0c;刘慧媛&#xff0c;王振洲&#xff0c;王 宇&#xff0c;徐 硕(中国水产科学研究院渔业工程研…...