首页 > 其他分享 >建图的一些技巧

建图的一些技巧

时间:2024-07-15 12:07:39浏览次数:15  
标签:技巧 text 点权 建图 顶点 条边 一些 out

已经不止一次了解到建图的技巧了, 例如:

  • 最大流建立超级源点,超级汇点
  • 建反图,但已经忘了这个题是什么时候的题了
  • 点权转成边权

2024/7/15 介绍点权转边权

如下所示,建立一个有 \(2N\) 个顶点和 \(N + M\) 条边(成本只分配给边)的有向图,答案就是从顶点 \(1_\text{in}\) 到顶点 \(i_\text{out}\) 的路径的最小成本。

  • 对于原始图中的每个顶点 \(i\) ,创建两个顶点 \(i_\text{in}\) 和 \(i_\text{out}\) ,并添加一条代价为 \(A_i\) 的有向边 \(i_\text{in} \to i_\text{out}\) 。
  • 为原始图中的每条边 \(u \leftrightarrow v\) 添加两条代价相同的有向边 \(u_\text{out} \to v_\text{in}\) 和 \(v_\text{out} \to u_\text{in}\) 。

使用 Dijkstra 算法可以在 \(O(M \log N)\) 时间内计算出最小成本。
这种方法也可用于其他目的。


标签:技巧,text,点权,建图,顶点,条边,一些,out
From: https://www.cnblogs.com/9102qyy/p/18302920

相关文章

  • golang的一些体会
     1.接口变量肯定对应一种具体类型,参考java的接口与实现。2.如果使用接口类型变量存储对象,那内存里会存两份内容:实际类型、接口类型(含接口中的函数指针列表)。   -其实这里的函数指针列表类似于C++的虚函数表。   -因为go的鸭子类型,所以接口变量必须记录接口中函数......
  • Java性能优化-if-else简化技巧
    场景Java性能优化-switch-case和if-else速度性能对比,到底谁快?:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/140376572如果单纯是做情景选择,建议使用switch,如果必须使用if-else,过多的if-else会让人看着很难受,可以使用如下几个小技巧来简化过多的if-else。注:......
  • 去重技巧:图片怎么查重?4个图片查重方法大公开!(2024 New)
    照片是保存记忆的绝佳工具。它们是终极时间胶囊,能够唤起久违的记忆和情感。然而,随着照片数量的迅速增长,我们电脑的存储空间也被它们占据得满满当当。这一大部分责任归咎于我们设备上无数的重复照片。这些重复照片由于我们的疏忽而产生,因我们的无所谓而滞留在电脑中。摆脱这些重......
  • 【c语言】你绝对没见过的预处理技巧
    ......
  • Python爬虫教程第二篇:进阶技巧与实战案例
    Python爬虫教程第二篇:进阶技巧与实战案例在上一篇教程中,我们学习了Python爬虫的基础概念、基本流程以及一个简单的入门实践案例。本篇教程将带领大家进一步探索Python爬虫的进阶技巧,并提供一个实战案例,帮助大家提升爬虫技能。一、进阶技巧处理JavaScript渲染的页面在We......
  • 工作中遇到的一些技术
    dynamic-tp动态线程池动态线程池,可以通过nacos配置动态修改线程池参数,官网以下是dynamic-tp与nacos集成的步骤,更详细配置项可以查看官网引入依赖坐标<dependency><groupId>org.dromara.dynamictp</groupId><artifactId>dynamic-tp-spring-cloud-starter-nacos</ar......
  • 释放LangChain潜能:精通性能优化的高级技巧
    释放LangChain潜能:精通性能优化的高级技巧引言LangChain作为一个多语言编程工具链,提供了强大的功能来简化开发流程和增强代码的执行效率。然而,随着项目规模的扩大和需求的增长,性能优化成为保持LangChain项目竞争力的关键。本文将深入探讨LangChain的性能优化技巧,包括代码......
  • 一些额外功能的铺垫
    publicclassHealth:MonoBehaviour{  publicAnimator[]healthItem;  publicAnimatorgeo;  //Startiscalledbeforethefirstframeupdate  voidStart()  { 。  }  //Updateiscalledonceperframe  publicvoid......
  • 一些可以在线段树上维护的信息和修改
    信息最基础的信息之一:区间和\(sum=l.sum+r.sum\)最基础的信息之一:区间大小\(sz=l.sz+r.sz\)最基础的信息之一:区间最值\(minv=min(l.minv,r.minv)\)普通信息:最值个数if(l.minv<r.minv)minvcnt=l.minvcnt;elseif(r.minv<l.minv)minvcnt=r.minvcnt;......
  • 【Qt Designer用Frame设置背景图片】不影响其它组件小技巧,控件层级设置,组件的继承
    QtDesigner用Frame设置背景图片、颜色不影响其它组件小技巧,控件层级设置,组件的继承在设置背景时,遇到一个问题,例如用frame当最后一层设置背景,加载资源图片后,会使frame内部组件继承相同格式,很麻烦。原语句用法border-image:url(:/images/login.png);内部组件会出现父......