<span>省选模拟88 题解</span>

A. 或许

容易发现 $u,v$ 联通仅当 $u \oplus v$ 能被集合 $S$ 通过 $\oplus$ 运算表出。

所以只需要维护线性基内元素个数。然后暴力的做法就是直接线段树分治。

然后有一个能进行删除的离线操作是,不断尝试用被删除最晚的替换线性基中的元素。

 

B. 这就是

对于完全图的情况,可以想到按照权值从小到大考虑每个点。

然后对于更加的一般的情况,只要预处理出每个点集是否是独立集,然后每次枚举一个点集表示集合内取值相同。

点集的权值就是集合内点的权值的最小值,然后用和上面类似的方法 dp 一下即可。

问题是如何恰好做到点集权值单调不降,然后对于每个方案还只统计一次,其实每次只要钦定转移未转移集合的最小值所在集合。

 

C. 人生吧

还是那个做法,对于求乘积的问题,可以把这个 $\gcd$ 质因数分解,然后考虑每一个 $p^k$ 造成的贡献。

然后根据部分分的提示,随便推一推式子弄个莫队上去就能做到 $O(n^{1.5} * log)$。

然后考虑根号分治,每个数 $> a_i^{0.5}$ 的质因子个数不超过 $1$ 个。

所以对于小的部分直接预处理前缀和,大的部分暴力莫队即可。

全部评论

相关推荐

04-07 20:46
宁夏大学 Java
一个轮子项目一个苍穹外卖,外卖项目包装成其他的,但是技术点都没变,不知道这样可行不可行。有没有好心人帮我提点建议啊
拿铁不coding:找实习微服务可不学,mq大致场景要了解,但不学问题也不大。我没写在简历上,也没咋问。重点还是mysql redis Java的八股,我根据真实面经整理得到的最全(高/中/低频)面试题,需要的牛u可以订阅一手我的专栏,祝好运
点赞 评论 收藏
分享
zhiyog:哈哈哈,其实是津巴布韦币
点赞 评论 收藏
分享
03-29 12:10
门头沟学院 C++
挣K存W养DOG:散漫消极者淘汰,一眼坑爹。实习几个月转正的时候说你加班太少,能力还行态度不够积极裁了,马上老实。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务