首页 > 其他分享 >题解:AT_abc372_e [ABC372E] K-th Largest Connected Components

题解:AT_abc372_e [ABC372E] K-th Largest Connected Components

时间:2024-09-22 13:23:47浏览次数:9  
标签:题解 ABC372E 查询 Components Largest 平衡 节点 abc372

博客内食用更佳

这道题的 \(k\le 10\) 其实没什么用,代码区别仅在于手写平衡树和使用内置容器。

这道题让查询与一个节点相连的所有点的信息,所以不难想到并查集。

又因为让查询第 \(k\) 大,所以不难想到平衡树和线段树启发式合并。

至此思路明显。我们对并查集中的每个节点开一个平衡树,每次合并两个点的时候,比较祖先节点的节点个数并进行启发式合并。查询的时候如果不是手写平衡树就遍历容器,然后遍历到第 \(k\) 个的时候就输出即可。

复杂度均摊 \(\mathcal{O}(n\log n)\)。

提交记录

标签:题解,ABC372E,查询,Components,Largest,平衡,节点,abc372
From: https://www.cnblogs.com/Lydic/p/18425191

相关文章

  • 题解:AT_abc372_c [ABC372C] Count ABC Again
    博客内食用更佳乍一看好像是数据结构。我们结合题目所求内容考虑。对于每次修改,能对答案产生影响的最多只能是当前字符向前和向后延伸\(2\)个元素所构成的长为\(5\)的子串。那么我们先\(\mathcal{O}(n)\)计算出来初始答案。每次修改的时候,不妨先把\(i-2\simi\)和\(i-......
  • 第31次CCF-CSP认证考试 第一题 坐标变换(其一)满分题解
    第31次CCF-CSP认证考试第一题坐标变换(其一)写在前面的话这道题偏简单,我们废话不多说,直接上代码。老系统的链接:旧系统(不过只有第三十二次以及之前的,第三十三及以后的只能在新系统里提交查看分数)。代码#include<iostream>usingnamespacestd;intmain(){ intn,m; ......
  • 正方形计数 题解
    题意简述给出一个\(n\timesn\)的格点平面,有\(q\)次询问,求有多少正方形以\((x,y)\)为某一顶点,满足这个正方形顶点均在格点上,且边长为有理数。\(l\leq10^5\),\(q\leq5\times10^5\)。题目分析看到边长为有理数,想到「毕达哥拉斯三元组」("Pythagoreantriple",简称「......
  • CF 231 E Cactus 题解(仙人掌图上找环)
    codeforces提交记录题意有一个点仙人掌图(每个点都只属于至多一个简单环),给出kkk个询问,问点x......
  • 记一次ctf题解(rsa简单部分)
    一.ctfshow1.babyrsaimportgmpy2fromCrypto.Util.numberimport*e=65537p=104046835712664064779194734974271185635538927889880611929931939711001301561682270177931622974642789920918902563361293345434055764293612446888383912807143394009019803471816......
  • B4033 [语言月赛 202409] 考试 题解
    存下输赢代价,计算时先减为平局,判断输赢,如果还是输,那继续加一变为胜利这局,判断输赢。#include<bits/stdc++.h>usingnamespacestd;#definelllonglongconstintN=1e6+10;intn;inta[N];intb[N];intc[N];intmain(){ios::sync_with_stdio(false); cin>>n......
  • 历年CSP-J初赛真题解析 | 2024年CSP-J初赛完善程序(33-42)
    学习C++从娃娃抓起!记录下CSP-J备考学习过程中的题目,记录每一个瞬间。附上汇总贴:历年CSP-J初赛真题解析|汇总_热爱编程的通信人的博客-CSDN博客#include<iostream>#include<vector>usingnamespacestd;boolisSquare(intnum){ inti=__1__; intbound=__2__......
  • 历年CSP-J初赛真题解析 | 2024年CSP-J初赛阅读程序(16-32)
    学习C++从娃娃抓起!记录下CSP-J备考学习过程中的题目,记录每一个瞬间。附上汇总贴:历年CSP-J初赛真题解析|汇总_热爱编程的通信人的博客-CSDN博客#include<iostream>usingnamespacestd;boolisPrime(intn){ if(n<=1){ returnfalse; } for(inti=2;......
  • 历年CSP-J初赛真题解析 | 2024年CSP-J初赛单项选择(1-15)
    学习C++从娃娃抓起!记录下CSP-J备考学习过程中的题目,记录每一个瞬间。附上汇总贴:历年CSP-J初赛真题解析|汇总_热爱编程的通信人的博客-CSDN博客第1题32位int类型的存储范围是()A.-2147483647~+2147483647B.-2147483647~+2147483648C.-2147483648~+2147483647D......
  • 9.21今日错题解析(软考)
    前言这是用来记录我每天备考软考设计师的错题的,大部分错题摘自希赛中的题目,但相关解析是原创,有自己的思考,为了复习:)面向对象技术——面向对象的基本概念如下所示的UML类图中,Car和Boat类中的move()方法(B)了Transport类中的move()方法A.继承B.覆盖C.重载D.聚合相关解析继......