ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

11月28日考试 题解

2020-11-28 21:33:53  阅读:207  来源: 互联网

标签:11 方案 题目 笼子 题解 28 动物 ql rightarrow


懒得放代码了,真是越来越怠惰了呢。

T1

题目大意:给定一张无向图,每条边起始均为白色。规定当与一个点相连的所有边只有一条边为白色时这条边将会染成黑色。可以手动染黑一些边。求最小染的次数。

手玩样例发现答案为总边数减去生成树边数。图不一定联通,这个结论可以推广到多个连通块。bfs即可。

T2

原题目:AT1218

考虑贪心,从小往大放。根据题意小的一定是往两边放的,发现如果要交换与它交换的只有比它大的数,因为小的数已经放好位置了。现在问题就转化为求逆序对,然后对于两边取min求和即可。

T3

题目大意:有三种动物分别为$A,B,C$,三个的克制关系为:$A\rightarrow B,B\rightarrow C,C\rightarrow A$。有$n$个笼子,每个笼子随机装着一种动物。有两种操作:1.将$v$笼子拆掉,把里面的动物放到$u$笼子来;2.询问使$u$笼子内动物知道现在仍能存活的初始状态的方案数。

我们可以维护一个每个动物存活的概率,然后合并的时候使用并查集。每次合并$u,v$的时候$u$的概率乘$\frac{2}{3}$,$v$的概率乘$\frac{1}{3}$,然后对于每个集合打lazy tag,find的时候更新子节点。询问的时候概率乘总方案即可。

T4

题目大意:给定一棵树,$q$次询问,每次给定$u,v,k$,请确定$k$条路径使得两两路径的交集为$<u,v>$。求方案数。注意点是有顺序的。保证每个点度数不超过$l$。

我不会$O(ql)$的做法,只会$ql^2$的。暂且说一下吧。

首先可以转化题意,变成“在$u$的子树中选两个节点使得它们的LCA为$u$”。显然每个子树内只能选一个节点,然后可以树形背包搞了。设$f_{i,j}$表示前$i$个子树选$j$个的方案数,然后大力转移。注意要去掉$<u,v>$这条链的方案数。不要忘记乘可重集合的排列。

正解是生成函数背包搞,也可以在$ql^2$的基础上预处理一些东西。不太会,咕咕咕……

标签:11,方案,题目,笼子,题解,28,动物,ql,rightarrow
来源: https://www.cnblogs.com/Invictus-Ocean/p/14054183.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有