首页 > 编程语言 >8.10 睡觉集合与钉耙编程

8.10 睡觉集合与钉耙编程

时间:2023-08-11 14:11:06浏览次数:56  
标签:钉耙 睡觉 编程 点集 集合 8.10

有时候我们不需要太复杂的结论与算法,只要时间复杂度够就行了。

交朋友

给定 \(n\) 个点和 \(m\) 条有向边。每次可以执行操作:找到 \((p,u)\in E\) 与 \((p,v)\in E\),连 \((u,v)\) 和 \((v,u)\)。问图中最大能有多少条边

后来连的有三种边:

  1. 两条 \(m\) 里的边连起来的。
  2. 一条 \(m\) 里的边加一条新增的边
  3. 两条新增的边

第一种好算。考虑与点 \(u\) 相连的点集 \(V\),\(V\) 中点最终必定两两联通,所以可以把它们用并查集缩成一个点。

之后我们把所有缩过的点放在一起 \(bfs\),当发现点集 \(V\) 有连向 \(p\) 的出边,则将 \(p\) 及其所属集合加入点集 \(V\)。因为此时 \(p\) 对集合 \(V\) 中的每个点都满足操作条件。

知道的点集以后,算边数是简单的。要注意原有的有向边不能重复算。

标签:钉耙,睡觉,编程,点集,集合,8.10
From: https://www.cnblogs.com/closureshop/p/17622833.html

相关文章

  • 2023.08.10杭电多校第八场
    solved:3rank:C.Congruences题意:对于每组数据给定M个pi和qi,pi为两两不同的质数,N为所有pi的积,问是否存在最小的正整数x使得xpi在模N的意义下与qi同余可以推出xpi在模pi的意义下与qi同余在模N的意义下与qi同余,如果存在输出x,否则输出-1;显然xpi在模N的意义下与qi同余可以......
  • 《C++ GUI Qt4编程》第2章——创建对话框——深入介绍信号和槽
    槽和普通的C++成员函数几乎是一样的——可以是虚函数;可以被重载;可以是公有的、保护的或者私有的,并且也可以被其他C++成员函数直接调用,它们的参数可以是任意类型。唯一不同的是:槽还可以和信号连接在一起,在这种情况下,每当发射这个信号的时候,就会自动调用这个槽。connect(sender,SI......
  • MATLAB R2023a Mac(专业编程和数学计算软件)
    MATLABr2023是一款功能强大的编程和数学计算工具,取用于处理科学、工程和数学应用程序中的复杂数据,可用于科学研究、信号处理、计算机视觉,机器学习,人工智能以及相关软件领域。适用范围:MATLAB是一款功能强大的编程工具,可以帮助您完成科学、工程或数学应用程序的开发工作。在您进......
  • 《CUDA编程:基础与实践》读书笔记(4):CUDA流
    1.CUDA流一个CUDA流指的是由主机发出的在一个设备中执行的CUDA操作序列。除主机端发出的流之外,还有设备端发出的流,但本文不考虑后者。一个CUDA流中的各个操作按照主机发布的次序执行;但来自两个不同CUDA流的操作不一定按照某个次序执行,有可能是并发或者交错地执行。任何CUDA操作......
  • CUDA 编程基础
    基于c/c++的编程方法支持异构编程的扩展方法简单明了的apis,能够轻松的管理存储系统cuda支持的编程语言:c/c++/python/fortran/java…1、CUDA并行计算基础异构计算CUDA安装CUDA程序的编写CUDA程序编译利用NVProf查看程序执行情况gpu不是单独的在计算机中完成任......
  • 2023.8.10
    今天上午继续看科四的题,看着看着困得要死,于是直接昏睡过去,但是却做了一个很emo的梦,让我直接变得心累(可能也是最近太过于喜欢猜疑)(或者说原来本来就不相信)然后中午又开始乱猜,憋了半天还是把自己的真实想法隐晦地表达出来,好吧其实也都得到了一个很合理的解释下午继续看题,尝试了一下......
  • 有感。2023.8.10
    他比我更懂我。他道出了我学OI的意义所在。这是我一直无法企及的,即便我有着人类的思维方式,有着人类的感情。记住,成功并不仅仅取决于起点和资源,更取决于你的坚持、努力和积极的心态。祝愿你在NOIP2023中取得理想的成绩,不管结果如何,都要为自己感到骄傲,继续追求卓越,享受OI之路......
  • 2023.8.10 练习
    ARC065F非常抽象。ARC066D我们知道\(a+b=a\spacexor\spaceb+2(a\wedgeb)\)考虑到若\(u=a\spacexor\spaceb,v=a+b\)那么\(v\geu\).我们只要统计所有\(v\),\((v,u)\)的个数求和即可。注意到若\((u,v)\)合法,那么\((2u,2v)\)、\((2u,2v+2)\)、\((2u+1,2v+1)\)......
  • 8.10日
    很喜欢夏天,夏天有清爽的玻璃汽水,有傍晚江边阵阵暖风。夏天究竟是什么样的呢?夏天是噪的蝉鸣和净白的书页,夏天是雨后的空气里弥漫着泥土的芬芳,夏天是在烈日下开空调,吹风扇,听Jay的歌,是享受着夏日带来的闲暇,又抱怨着毒辣的夏日。老舍说,夏天是北平人口福最深的季节,他说夏天又有......
  • Java 编程中关于异常处理的 10 个最佳实践
    异常处理在编写健壮的Java应用的过程中,扮演着一个重要的角色。它并不是应用的功能需求,且需要优雅的处理任何错误情况,例如资源不可用,错误的输入,null输入等等。Java提供几个异常处理功能,并通过try,catch和  finally关键字内嵌在语言的本身。Java编程语言同样允许创建新的异常和使......