首页 > 其他分享 >AT_abc_260_f 总结

AT_abc_260_f 总结

时间:2023-05-18 10:34:39浏览次数:43  
标签:总结 abc 个点 枚举 V1 V2 260 相连

题目:AT_abc_260_f

链接:洛谷ATvjudge

题意

  • 有一个 \(S + T\) 个点 \(m\) 条边的简单无向图 \(G\)。点集 \(V1\) 包括点 \(1 - S\),点集 \(V2\) 包括点 \(S + 1-S + T\),同点集的点没有边相连,请输出一个按任意顺序输出任意长度为 \(4\) 的简单环。

  • 数据范围:\(2 \le S \le 3 \times 10^5, 2≤T≤3000,4≤M≤min(S×T,3×10^5)\)。

思路

  • 因为同点集的点不会连边,所以这 \(4\) 个点所属点集一定为 \(V1,V2,V1,V2\),所以只要有两个属于 \(V1\) 点 \(x,y\), 都与 \(V2\) 中的 \(u,v\) 两个点有连边,那么这 \(x,y,u,v\) 就构成了一个简单环。

  • 那么怎么实现呢?令 \(c_{u,v}\) 表示有 \(c_{u,v}\) 个点与 \(u,v\) 都相连,那么如果有 \(c_{u,v} > 1\) 那么说明有两个属于 \(V1\) 的点与 \(u,v\) 都相连。

  • 所以令 \(a_{u,v}\) 表示与 \(u,v\) 都相连的那个点,我们可以枚举 \(S\) 中的每个点,在枚举和当前点 \(x\) 相连的不同的两个点 \(u,v\),如果 \(a_{u,v} = 0\),\(a_{u,v} = x\),否则那么 \(x\) 和 \(a_{u,v}\) 都与 \(u,v\) 相连,\(x,a_{u,v},u,v\) 构成了简单环。

  • 但是问题又来了,时间复杂度是多少,每个在 \(V1\) 的点都枚举与它相连的两个点,似乎会超时。但是实际上你最多枚举 \(T^2\) 个点对,否则就出现重复了(抽屉原理),直接输出,结束程序即可。

  • 时间复杂度:\(O(S + T^2)\)

标签:总结,abc,个点,枚举,V1,V2,260,相连
From: https://www.cnblogs.com/xhr0817-blog/p/17409400.html

相关文章

  • 近期工作总结#6
    遇到一个很尴尬的问题network里面有返回值,但是打印不出来,打印出来里面的值就是空的,然后经过询问排查才知道,console的打印的值存在内存里,但是如果你的代码有处理之后,在打印里面就会变成处理后的值,当你点开的时候,这个值在内存里放着,你点击的时候才会调用它,但是此时的值以及被处理过......
  • abc270_f Transportation 题解
    Transportation题意有\(n\)个城市,你可以执行以下操作若干次:选择一个没有建机场的城市\(i\),花费\(x_i\)建一个机场。选择一个没有建港口的城市\(i\),花费\(y_i\)建一个港口。还有\(m\)条没有修建的道路,第\(i\)条道路双向连接\(a_i\)和\(b_i\),修建这条道路需要......
  • GRPC与 ProtoBuf 的理解与总结
    转载请注明出处:1.GRPC官网:https://www.grpc.io/gRPC官方文档中文版:http://doc.oschina.net/grpcRPC框架的目标就是让远程服务调用更加简单、透明,其负责屏蔽底层的传输方式(TCP/UDP)、序列化方式(XML/Json)和通信细节。服务调用者可以像调用本地接口一样调用远程的......
  • 软件构造lab3总结
    软件构造的课程和实验已经结束一段时间了,如今回顾起来,收获颇丰,在此我将回忆总结一下在实验中出现的问题,总结一下从中得到的教训,进行一个盘的复,避免以后再出现这些问题。首先,最重要的一点就是不要拖延!不要拖延!不要拖延!在前两次实验中,我的时间把控还做的不错,两次实验......
  • 第四五次菜单计价及期中考试分析与总结
    前言:经过五次大作业的洗礼与折磨,相信大家已经被折磨疯掉了吧,经过上一次的blog总结经验我现在已经学会了blog的总结经验,接下来,我将会从这两次大作业即一次期中考试所涉及的知识点,难度以及题量还有我对这三次作业的看法这四个方面展开,有针对的展开一次总结性blog!1.题量:(1).......
  • PTA题目集4、5及期中考试的总结性Blog
    一、前言随着对java学习的越来越深入,需要学习的东西也越来越多,第四五次pta题目集主要还是以菜单计价系统为主,相较于以前的菜单计价系统,增加了异常情况的处理,以及特色菜,口味度等功能,使这个菜单计价系统越来越与现实生活相关联,当然与之同时题目的难度当然也是大幅度提高了。虽然这......
  • [ABC269F] Numbered Checker
    [ABC269F]NumberedChecker题意有一个\(n\timesm\)的矩阵,有:\(a_{ij}=\begin{cases}(i-1)m+j&i+j\equiv0\pmod{2}\\0&i+j\equiv1\pmod{2}\end{cases}\)给定\(a,b,c,d\)问从\((a,c)\)到\((b,d)\)的数字和是多少。思路数学,我们可以发现,每一行可以表......
  • 5.16每日总结
    搭建python系统在桌面建立一个工作夹,然后每个章节都单独建立一个Python文件进行实验。比如可以新建一个pytips的目录,然后在该目录下,每个章节创建一个tips文件夹,里面创建对应的 .py 文件。......
  • javaPTA题目集4、5及期中考试总结
    一、前言通过这三周对Java课程的学习及pta大作业的练习,我了解了Java的编译环境如JDK、JRE等等,Java去掉了C++语言的许多功能,是安全的、解释的、高性能的语言,但最主要的还是Java的面向对象性,Java中的类与对象的创建以及类间关系,类与类之间方法属性的调用时常让我头疼,通过pta的练习......
  • abc235_d Multiply and Rotate 题解
    MultiplyandRotate题意给定两个整数\(a\)和\(n\),有一个整数\(x\),初始值为\(1\),有两种操作:将\(x\)变成\(x\timesa\)。在\(x>10\)且\(x\)不是十的倍数的情况下可以执行此操作:将\(x\)当成一个字符串,将其循环右移一次。求最少执行多少次操作能把\(x\)变......