首页 > 其他分享 >朋友(强连通)

朋友(强连通)

时间:2024-07-18 09:42:19浏览次数:14  
标签:连通 包含 朋友 Safe 男女朋友 姓名 输入

https://www.luogu.com.cn/problem/P1407   第1题     朋友 查看测评数据信息

我们已知 n 对男女朋友,称第 i 对朋友的男方为 B(i),女方为 G(i)。若某男 B(i) 与某女 G(j) 曾经是同学(无论是大学,高中,亦或是幼儿园阶段,i <=j),则当某方与其朋友(即 B(i) 与 G(i) 或 B(j) 与 G(j))感情出现问题时,他们有私奔的可能性。不妨设 B(i) 和其配偶 G(i) 感情不和,于是 B(i) 和 G(j) 旧情复燃,进而 B(j) 因被戴绿帽而感到不爽,联系上了他的初恋情人 G(k) ……一串串的分手事件像多米诺骨牌一般接踵而至。若在 B(i) 和 G(i) 离婚的前提下,这 2n 个人最终依然能够结合成 n 对情侣,那么我们称第 i对 为不安全的,否则 i 就是安全的。

给定所需信息,你的任务是判断每对是否安全。

输入格式

 

第一行为一个正整数 n,表示男女朋友的对数;

以下 n 行,每行包含两个字符串,表示这 n 对男女朋友的姓名(先女后男),由一个空格隔开;

第 n+2 行包含一个正整数 m,表示曾经相互喜欢过的情侣对数;

以下 m 行,每行包含两个字符串,表示这 m 对相互喜欢过的情侣姓名(先女后男),由一个空格隔开。

所有姓名字符串中只包含英文大小写字母,大小写敏感,长度不大于 8,保证每对关系只在输入文件中出现一次,输入文件的最后 m 行不会出现未在之前出现过的姓名,这 2n 个人的姓名各不相同,1 <=n<= 4000,0 <=m<= 20000。

 

输出格式

 

输出文件共包含 n 行,第 i 行为 `Safe`(如果第i对 是安全的)或 `Unsafe`(如果婚姻 i 是不安全的)。

 

输入/输出例子1

输入:

2

Melanie Ashley

Scarlett Charles

1

Scarlett Ashley

 

输出:

Safe

Safe

 

样例解释

 

题目有点绕,化简一下。画个图好理解

设A代表女,B代表男,根据题意,可以整理成上图所示

那么就是2个组合 {B1, A2},{B2,A3}, 此时还有两个单身,要形成稳定婚姻,只能是 {B3,A1}。

那么可以发现此时就是一个强连通,也就是环,图中每一个点都可以到另外一个点,因为只有这样,图中的每一个人即使丢失现有配偶,也有他的配偶可选

那么我们考虑找强连通即可。

 

标签:连通,包含,朋友,Safe,男女朋友,姓名,输入
From: https://www.cnblogs.com/didiao233/p/18308759

相关文章

  • asp.net 动态加载与卸载程序集的尝试(没有成功)欢迎解决的朋友留言告知
    参考 C#.Net如何动态加载与卸载程序集(.dll或者.exe)0-------通过应用程序域AppDomain加载和卸载程序集-龙骑科技-博客园(cnblogs.com)大概意思是微软的.NET运行不支持直接卸载应用程序集,因为一旦加载程序集,即使是动态加载就会给该程序集加载到当前正在运行的主线程上,如果想......
  • 自动填充验证码,懒人福音,对视觉障碍的朋友太友善了
    自动填充验证码,懒人福音,对视觉障碍的朋友太友善了一、安装插件Tampermonkey油猴(篡改侯)脚本插件https://www.tampermonkey.net/这个怎么安装就不详细介绍了二、安装验证码解析脚本https://greasyfork.org/zh-CN/scripts/418942-万能验证码自动输入-升级版点击进去直接点......
  • PHP姓名配对测试源码 可查看朋友到底喜欢谁的趣味源码
    基于PHP+MYSQL开发制作的趣味测试网站源码。可在后台提前设置好缘分,自己手动在数据库里修改数据,数据库里有就会优先查询数据库的信息,没设置的话第一次查询缘分都是非常好的95-99,第二次查就比较差,所以如果要你女朋友查询你的名字觉得很好那就得是她第一反应是查和你的缘分......
  • 连通性相关
    连通性相关强连通分量强连通分量(SCC):极大的强连通子图。Tarjan算法维护一个栈存储搜索到的还未确定强连通分量的点,定义:\(dfn_u\):节点\(u\)被搜索的次序。\(low_u\):\(u\)子树中能回溯到的最小的\(dfn\)。不难得到:一个点子树内的\(dfn\)大于该点的\(dfn\)。......
  • 小朋友的票价
    小朋友的票价说明已知一位小朋友的电影票价是10元,计算x位小朋友的总票价是多少?输入格式一行,小朋友人数输出格式1行,总票价样例输入数据11输出数据1total=10#include<bits/stdc++.h>usingnamespacestd;intmain(){ intx;//人数 cin>>x; cout<<"total="......
  • 图论连通性
    【学习笔记】图论连通性啊啊啊啊啊!先引用一篇犇的:)))缩点弱连通:对于有向图中两点\(x\)和\(y\),它们在所有边为无向时存在一个环使它们相连。强连通:对于有向图中两点\(x\)和\(y\),存在一个环使它们相连。强连通子图:对于有向图\(G=(V,E)\),如果对于一个\(V\)的子集......
  • 无向图的连通性(割点与割边)
    割点与割边 割点的求解方法  割点详解 板题:https://www.luogu.com.cn/problem/P3388  第1题   割点 查看测评数据信息给出一个n个点,m条边的无向图,求图的割点。输入格式 第一行输入两个正整数n,m。下面m行每行输入两个正整数x,y表示x到y有一......
  • 动态图连通性笔记
    首先离线的话有几种方法:线段树分治动态维护最大生成树:边的权值为他的(下一次)删除时间,加边正常做,询问时问路径最小值是否小于当前时刻.动态图连通性Holm-deLichtenberg-Thorup(HLT)暴力:维护生成森林,若删树边则暴力找另一条边能替代这条树边.思想:给每条边赋一个“不重......
  • 数据融合工具(6)线要素网络连通性分组计算
            出行,一直在使用导航辅助我们从起点奔赴终点,或许我们会有过这样的思考?导航路线规划是怎么实现的?        ……        我们先掰扯掰扯……一、导航路线规划是如何实现的?        导航路线规划是一种复杂的算法和技术,它用于确定......
  • 信息学奥赛初赛天天练-43-CSP-J2020基础题-链表、连通图、2进制转10进制、栈、队列、
    PDF文档公众号回复关键字:202407102020CSP-J选择题单项选择题(共15题,每题2分,共计30分:每题有且仅有一个正确选项)7.链表不具有的特点是()A.可随机访问任一元素B.不必事先估计存储空间C.插入删除不需要移动元素D.所需空间与线性表长度成正比8.有10个顶点的无向图至少......