首页 > 其他分享 >2024.7.10

2024.7.10

时间:2024-10-25 09:20:41浏览次数:6  
标签:10 le 原图 状态 2024.7 条边 节点

2024.7.10

T1

题面

请构造一颗有 \(a\) 个度数为 \(1\) 的点与 \(b\) 个度数为 \(3\) 的点的树,无解输出 \(0\)

\(a,b\le 200\)

题解

先满足 \(3\) 度点,再满足 \(1\) 度点即可

T2

题面

给定一个 \(n\) 个点 \(m\) 条边的有向图,便有边权 \(w\),请找一条从 \(1\) 到 \(n\) 的路径,使得 \(\max_{i=1}^{step}w_i\) 最小。

\(n,m\le 3\times 10^5,1\le w_i\le 10^9\)

题解

直接跑类最短路可过。但正解是二分加BFS。

T3

题面

给你一个 \(n\) 个点 \(m\) 条边的简单无向连通图,最大化度数为奇数的点的个数。
还需要给出构造,即输出一个长度为 \(m\) 的 \(01\) 串,\(1\) 表示保留这个边,\(0\) 表示删掉这个边,请输出字典序最大的方案。

\(n\le 6\times 10^5,n-1\le m\le 9\times 10^5\)

题解

等价于每个点有一个状态,最后要使状态为 \(1\) 的边尽可能的多,保留一条边相当于将这条边连接的两个点状态取反。

考虑保留边,假设原图是一棵树,有一种构造方案:

对于每个子树而言,如果子树根节点其与子树内的点连接后状态为 \(0\),则子树根节点与其父亲连边,使得这个子树根节点状态为 \(1\)。

这样构造出来,会发现,如果 \(2|n\),则答案为 \(n\),否则为 \(n-1\)。可以证明这是最优的答案。如果原图不是棵树,我们可以生成一棵树,选择所有非树边,这是所有点状态一开始不是全为 \(0\),通过上述方案可以得到答案,由于要求字典序最大,编号小的边应该被当作非树边,所以这里需要最大生成树。

如果 \(2|n\),那么上述的构造是唯一的方案,因为不论如何调换边的状态,都会使得答案减少。

如果 \(2\not|n\),那么需要抉择的那个偶数点的位置,因为按照上述构造方法,偶数点一定会在根节点,我们需要将这个点换下来。显然,将偶数点换下来的过程就是将这两个点之间的边状态取反的过程。

因为要构造字典序最大解,每次交换应该找到编号最小的状态为 \(0\) 的边。

于是可以按照如下方案建立新图:

原图上每条边从其上方第一个编号比其小的原图上的边边向它连边,如果其上方不存在编号比其小的边,从虚空节点向其连边。

每次从虚空节点出发,找到他连的边中编号最小的状态为 \(0\) 的边下面的点,取反这两点之间的所有边,并跳到那个点,重复执行直到无法执行。

最后得到字典序最大解。

标签:10,le,原图,状态,2024.7,条边,节点
From: https://www.cnblogs.com/lupengheyyds/p/18501787

相关文章

  • 10.23 测试用例
    设计测试用例编写技巧=================================一、查看用例的模板案例模板1:案例模板2:案例3:==========================================二、用例的要素讲解.编写用例的要素?用例编号,用例标题,前置条件,测试步骤,预期结果,优先级(必写)系统名称、模块名称、用例创......
  • 2024.10.23-25 杂题
    2024.10.23-25杂题P7323[WC2021]括号路径如果存在\((a,b,w)\),\((c,b,w)\)。那么\((a,c)\)就是一条合法路径。所以把\(a,c\)放入一个集合。然后合并新的的时候把\(w\)一样的合并了就行。最后统计每个"块"的数量,答案就是\(\sum_{i=1}^{n}C_{cnt_i}^{2}\)复杂度\(O(......
  • P1085 [NOIP2004 普及组] 不高兴的津津 难点:如何按要求实现打印最生气的天数.py
    """anger=0day=0foriinrange(7):inclass,extra=input(map(int,input().split()))anger=inclass+extraday+=1"""#将anger数组的大小排序,输出anger最大的那一天,但我无法将anger和day连接起来排序#解决办法是用max_anger和angriest_day两个变量,在七天的......
  • 使用免费工具在 Windows 11/10/8/7 中扩展 C 盘的 3 种方法
    越来越多的Windows10笔记本电脑和台式机使用SSD作为系统盘,这对于提高计算机性能很有用,因为SSD的读写速度要快得多。但另一方面,SSD价格更高,因此比传统机械硬盘体积更小。当然C盘空间不足的可能性更大。在这种情况下,没有人喜欢重新安装操作系统和所有程序。很多人问是否可以在Wi......
  • 适用于 Windows 11/10 电脑 的 13 个最佳文件恢复软件
    如果您由于系统故障、硬件损坏、人为错误或病毒攻击而丢失了重要文件或文件夹。不用担心,因为我们随时为您提供帮助!借助正确的文件恢复工具,您可以立即检索计算机上不同类型的文件。如果你有为您的文件创建备份,你不用担心,但是如果你没有备份怎么办?然后,您需要获得适用于Windows1......
  • Hero Age v5.6.10 MOD APK (Menu/One Hit, God Mode)
    HeroAgev5.6.10MODAPK(Menu/OneHit,GodMode)October18,2024(42secondsago)HeroAgeModAPKisasimpleandfun-filledofflinerole-playinggame.Youwillfighttheenemiesandbecomethestrongestheroamongthoseplayers. AppNameHeroA......
  • 10.24
    今天学了数据结构中的线索二叉树-线索:在传统的二叉树中,节点的左指针指向左子树,右指针指向右子树。如果节点没有左子树,则左指针指向该节点的中序前驱节点;如果没有右子树,则右指针指向中序后继节点。线索二叉树的性质:线索二叉树通过这种方式使得遍历时不再需要使用栈或递归,能够直接......
  • 1020-1026
      れいやすたか例1:安い―高いきっさてんはいで例2:喫茶店に入りますー喫茶店を出ますおお1)多いー“多い(おおい)”的反义词是“少ない(すくない......
  • 20241024
    一、盘前计划情绪锚定:常山北明、双成药业、海能达、华立明天的早盘:先抑后扬,关注明天的午盘,或尾盘关键点是指数明天是否高开修复,如果不修复,情绪还是要等下午1.宗申动力万丰奥威要稳住,5分钟不破均线多持有观察,日内高点卖(6-8),但要低吸回来宗申动力正常五日线趋势,按照低吸高抛对......
  • 10.24日
    处理客户端请求:Servlet能够接收来自客户端(通常是HTTP请求)并对其进行处理。通过doGet()或doPost()方法,Servlet可以处理不同类型的请求。生成响应:Servlet可以生成动态响应,例如生成HTML、JSON、XML等,返回给客户端。连接后台逻辑:它可以与数据库或其他服务进行交互,以获取......