首页 > 其他分享 >1.19 CW 模拟赛 T3. [NWRRC2015] Graph

1.19 CW 模拟赛 T3. [NWRRC2015] Graph

时间:2025-01-19 21:52:31浏览次数:1  
标签:NWRRC2015 入度 当前 堆顶 Graph 删掉 T3 堆堆 小根堆

前言

最后一道, 补了跑路

思路

原来是贪心, 那没救了

首先考虑不加边的时候怎么处理
显然我们可以用小根堆代替队列处理 \(\rm{topo}\) 序

那么我们如何使得这个答案变大
不难发现, 我们只要对于当前堆顶加一条入度, 就一定可以使得答案变大
但是由谁来连这一条边呢?
我们先不管, 把它丢进一个堆里面

我们考虑维护一个大根堆 \(q\) 和一个小根堆 \(p\) , \(p\) 维护当前所有入度为 \(0\) 的点, \(q\) 维护确定用一次操作给他入度 \(+1\) 的点

每次维护, 肯定是尝试把 \(p\) 中的点加入 \(q\) 中, 若你发现 \(p\) 中只有一个元素且该元素还比 \(q\) 的堆顶大, 那么显然是直接确定即可
否则我们考虑把 \(p\) 中的点加入 \(q\) 中直到操作次数不够或者 \(p\) 被清空

如果操作完之后, \(p\) 中还有点, 只能将其作为当前这一位的答案, 否则用 \(q\) 的堆顶来作为这一位的答案

具体理解的话, \(q\) 的堆顶我们用当前拓扑序的前一位来指向它, 就可以做到这一个位置放最大的序

具体的,

  • 小根堆大小大于 \(1\)
    若 \(K>0\) : 为当前堆顶添加入边 (打标记并放入大根堆中)
    否则:删掉堆顶(与普通拓扑序相同)
  • 小根堆大小等于 \(1\)
    若 \(K>0\) 且大根堆不为空且大根堆堆顶更大 : 为当前堆顶添加入边,删掉大根堆堆顶
    否则:删掉堆顶
  • 小根堆大小等于 \(0\)
    删掉大根堆堆顶

总结

很聪明, 但不知道有什么用
当每日一练了, 开拓思维

有点屎, 建议看 luogu 题解

标签:NWRRC2015,入度,当前,堆顶,Graph,删掉,T3,堆堆,小根堆
From: https://www.cnblogs.com/YzaCsp/p/18679992

相关文章

  • AI 加持下的 arduino ESP32S3 GT30L32S4W 汉字显示
    AI加持下的arduinoESP32S3GT30L32S4W汉字显示程序小白,手上一块中景园1.54寸ST7789显示屏,自带GT30L32S4W汉字字库显示芯片,因为不知道怎么在arduino平台下使用硬字库一直闲置着。在网上翻阅了大量资料针对arduino平台下使用此类硬字库芯片的代码例程没有找到。......
  • Unity Shader Graph 2D - 角色身上部件高亮Bloom效果
    在游戏中,角色身上部件的高亮Bloom效果是游戏中比较基础且常见的效果。本文将带大家实现游戏中角色身上部件的高亮Bloom效果,同时也会用到Unity中PostProcessing(后期处理)相关的基础功能。BloomBloom是一种图像后期处理的效果,可让高光部分更加的强烈,产生散射开的效果,从而使游......
  • 哈希图共识(Hashgraph Consensus)算法
    哈希图共识(HashgraphConsensus)是一种新型的分布式共识算法,旨在提供一种快速、高效且无须传统区块链的共识机制。它基于哈希图(Hashgraph)结构,通过一种名为“gossipaboutgossip”(关于闲聊的闲聊)和“virtualvoting”(虚拟投票)的技术实现共识。哈希图结构哈希图是一种有向无......
  • Springboot(五十八)SpringBoot3使用Redisson实现接口的限流功能
    这部分我记录一下我使用redission实现接口限流的全过程。关于自定义注解,请移步《SpringBoot(二十六)SpringBoot自定义注解》一:redission自定义限流注解主要流程对接口实现限流,主要使用了Redisson提供的限流API方法;使用很简单:第一步:声明一个限流器; RRateLimiter rRateLim......
  • 【ShaderGraph星球实战】制作类地行星
    前言        开个新坑,用ShaderGraph制作系列的星球,提供该方案的一种思路的参考。    行星渲染如果算原图,法线图,高光图三张的话,文件大小动辄几兆或者十几兆。如果要做多样化行星,需要更多贴图。    为了解决上面问题,本项目完全不采用任何贴图。相对贴......
  • 国产化板卡设计原理图:2274-基于FMC接口的JFM7VX690T36的3U VPX信号处理板
    基于FMC接口的JFM7VX690T36的3UVPX信号处理板一、板卡概述     本板卡系我司自主研发的基于3U VPX导冷架构的信号处理板,适用于高速图像处理等。芯片采用工业级设计。该处理板包含1片 FPGA-JFM7VX690T36。板载两组64位宽DDR3,每组容量4GB,一个HPC FMC接口。VPX接口连接4......
  • 解决 AI 幻觉:AutoGen 与 GraphRAG 如何重塑可靠 AI
    解决AI幻觉:AutoGen与GraphRAG如何重塑可靠AI生成式人工智能(GenAI)正在各行各业引发变革,但一个严峻挑战却频繁出现:大型语言模型(LLM)中的幻觉现象。想象一下,你的人工智能自信满满地输出错误信息,这就是幻觉。当你依靠人工智能做商业决策时,这可是个大问题。在这篇文章中,我们将剖析两种......
  • springboot3+快速集成jwt指南
    首先简单回忆一下思路:登录接口为用户生成一个jwt,jwt存于redis中。在使用后续功能通过web拦截器拦截,先获取校验jwt是否过期,再决定是否放行。后续根据jwt中取出来的信息即可实现简单的鉴权总体来说功能如下:本博客以springboot3+为例,使用jjwt0.12.3<dependency>......
  • 基于云主机搭建Termgraph绘图工具,将数据转化为可视化图形
    摘要:本实验将指导开发者如何在鲲鹏服务器搭建一个Termgraph工具,并根据源码提供的测试文件绘制统计图形。本文分享自华为云社区《【开发者空间实践指导】基于鲲鹏搭建Termgraph绘图工具》,作者:开发者空间小蜜蜂。 一、案例介绍鲲鹏服务器是基于鲲鹏处理器的新一代数据中心......
  • LangGraph 教程:初学者综合指南(1)
    关键概念图结构LangGraph设计的核心是基于图形的应用程序工作流程表示。该图包含两个主要元素:节点-工作的构建块:LangGraph中的每个节点代表应用程序中的一个不同的工作或操作单元。这些节点本质上是封装特定任务的Python函数。此任务可能涉及多种操作,例如:与LLM直......