首页 > 其他分享 >三、四元环计数

三、四元环计数

时间:2024-02-09 09:44:05浏览次数:27  
标签:度数 复杂度 sqrt 后继 四元 计数 枚举 出度

无向图三元环计数:

定义一个有向图 \(G'\):把 \(G\) 中每条边改成从度数小的点指向度数大的点 的有向边。

性质:\(G'\) 中每个点的出度 \(\le 2\sqrt m\)。

证明:若 \(u\) 的出度 \(>2\sqrt m\),则显然 \(u\) 在原图中的度数 \(>2\sqrt m\)。所以 \(u\) 指向的至少 \(2\sqrt m + 1\) 个点的度数,也都 \(>2\sqrt m\)。(因为是度数小指向度数大的)

这 \(2\sqrt m\) 个点,每个点的度数都大于 \(2\sqrt m\),则总边数显然 \(>m\)。

这个性质有什么用呢?

推论:(在 \(G'\) 中)枚举点 \(x\) ,再枚举 \(x\) 的后继 \(y\),再枚举 \(y\) 的后继 \(z\) 的复杂度是 \(O(m\sqrt m)\) 的。

证明:可能有一种不准确的估计:\(x\) 点是 \(O(n)\) 枚举的,枚举 \(x\) 的后继 \(O(\sqrt m)\),再枚举一个又乘 \(O(\sqrt m)\),总复杂度是 \(O(nm)\) 的。但实际上,枚举 \(x\) 和 \(x\) 的后继,相当于枚举了所有边的起点,总复杂度不是 \(O(n\sqrt m)\) 而是 \(O(m)\) 的。所以总复杂度是 \(O(m\sqrt m)\)。

由此可以设计出我们的算法:

枚举点 \(a\),枚举 \(a\) 的后继 \(b\),将所有 \(b\) 打上标记;然后枚举所有 \(b\) 的后继 \(c\),若 \(c\) 有标记,\(ans+1\)

标签:度数,复杂度,sqrt,后继,四元,计数,枚举,出度
From: https://www.cnblogs.com/FLY-lai/p/18012329

相关文章

  • 数字式频率计、通用计数器、高精度频率计的操作使用说明
    在选择测量仪器之前必须了解待测信号的所有特性,附非肯定待测信号是纯净(无噪声干扰)、平稳、单一频率成分,否则应该在制订测试方案前用频谱分析仪先观测待测信号中的干扰信号及噪声电平,然后看计数器的性能是否能允许这些干扰并仍能成功地完成频率的测量。给相应通道输入频率信号,点击启......
  • 括号序列计数
    1.设\(f(n,m,k)\)表示有\(n\)个左括号,\(m\)个右括号,子序列中合法括号序列最长长度为\(2k\)的括号序列,转移为\[f(n,m,k)=\left\{\matrix{{n+m}\choosen&&k\gemin(n,m)\\f(n-1,m,k-1)+f(n,m-1,k)&&k<min(n,m)}\right.\]通过归纳可以得到\[f(n,m,k)=\left\{\ma......
  • 第十五节:排序算法详解3(希尔排序、计数排序、桶排序、基数排序)
    一.        二.        三.         !作       者:Yaopengfei(姚鹏飞)博客地址:http://www.cnblogs.com/yaopengfei/声     明1:如有错误,欢迎讨论,请勿谩骂^_^。声     明2:原创博客请在转载......
  • sql server执行dbcc修复,提示:(类型为 In-row data)的对象 "hr_bd_BusTables",计数 In-ro
    问题:数据库执行DBCCCHECKDBwithNO_INFOMSGS检查提示:计数In-rowdataUSEDpage不正确。请运行DBCCUPDATEUSAGE。DBCCCHECKDBwithNO_INFOMSGS;消息2508,级别16,状态1,第1行对于索引ID为1、分区ID为311221045166080、分配单元ID为311221045166080(类型......
  • 从CF1737学习区间计数处理与开方精度丢失问题
    Problem-B-Codeforces思路出来之后,需要计算\(l,r\)区间的个数。我想的是计算出\([0,r]\)的个数和\([0,l]\)的个数,然后相减。大体上是没问题,但是我的实现麻烦而且有错误。初始代码voidsolve(){lll,r;cin>>l>>r;autocalc=[&](llx,bool......
  • C#double类型转换成科学计数法类型(全网最全最好回答)
     doubledoubleData=heatData.MaxSampleValue.ToString("0.0000E+0"); 众所周知G7的转换是有精度限制的,所以:doublevalue1=1234.56789;doublevalue2=0.000123456789;doublevalue3=12345678901234567890.123456789;stringf......
  • 【数据库】对大数据量数据集,PostgreSQL分组统计数量,使用 row_number() over
    在处理大数据量数据集时,我们经常需要进行分组统计。而在PostgreSQL中,我们可以使用row_number()函数结合over(partitionby)子句来实现这个功能。同时,通过设置row_num<=100的条件,我们可以限定每组最多数量为100。本文将详细介绍如何使用这种方法进行分组统计。一、row_......
  • 【数据库】对大数据量数据集,PostgreSQL分组统计数量,使用 row_number() over
    在处理大数据量数据集时,我们经常需要进行分组统计。而在PostgreSQL中,我们可以使用row_number()函数结合over(partitionby)子句来实现这个功能。同时,通过设置row_num<=100的条件,我们可以限定每组最多数量为100。本文将详细介绍如何使用这种方法进行分组统计。一、row......
  • 无涯教程-Swift - 引用计数
    内存管理函数及其用法通过自动引用计数(ARC)以Swift4语言处理。ARC用于初始化和取消初始化系统资源,从而在不再需要时释放类使用的内存空间。ARC跟踪有关我们的代码之间的关系的信息,以有效地管理内存资源。ARC函数每次通过init()创建新的类时,ARC每次都会分配一块内存来存储信......
  • 计数专题总结
    传送门AB这道题只需知道一个判断括号序列的性质,设左括号为\(1\),右括号为\(-1\),则对于\([l,r]\)满足其为合法括号序列就是$\foralll\lei\ler,sum_i\gesuml-1$,又因为每次只会\(+1\)或\(-1\),所以每次记录当前\(sum\)有多少的时候,就把\(sum+1\)的个数清零即可......