首页 > 其他分享 >2024.8.14 test

2024.8.14 test

时间:2024-08-14 22:05:17浏览次数:10  
标签:le 14 2024.8 times fa 哈希 端点 test bas

A

一棵树,你每天可以选择不超过 \(m\) 个祖先都被选择的点,问最少多少天选完。\(n\le 10^5\)。

考虑贪心,每次选出子树深度最大的 \(m\) 个点或子树大小最大的 \(m\) 个点都是对的。

B

一棵树 \(n\le 5e5\),选若干出来,对于每个点,如果其儿子有选,那么不能被选,否则其有 \(p_u\) 概率被选。
对于每个点 \(u\) 的子树内所有点 \(v\),如果 \(u,v\) 都被选,那么会产生 \(s_v \times a_u\) 的贡献,其中 \(a\) 是给定的,\(s\) 是 01 数组,你要确定 \(s\) 数组使得总的贡献期望最大。

显然期望是 \(\sum s_u\sum_{u \in subtree(v)} p(u\cap v)\),那么对于贡献为正的,取 \(s_u=1\),否则取 \(s_u=0\).
显然 \(p(u)=\prod_{fa_v=u}(1-p(v))\),求 \(p(u\cap v)\) 即令 \(p_u=1\) 并重新 dp 一遍。
考虑从 \(p_u\) 向上爬,即不断令 \(p'_{fa}=p_{fa}\times \dfrac{1-{p'_u}}{1-{p_u}}\),
由于 \(p_{fa}\times (1-p_u)\) 已经是已知的,直接用用矩阵表达出来,顺便记录 \(a_up'(u)\)。
直接前缀矩阵积即可。

C

一个字符串,多次询问某个长度为 \(2^k\) 区间是否满足所有 \(i,j\) 在二进制下的表示是翻转的,\(s_i=s_j\)。
\(n,q\le 5e5\)。

考虑一个区间合法的条件,那么就是这个字符串做蝴蝶变换后跟原字符串相同。
考虑哈希。我们要预处理一个区间和其蝴蝶变换后的哈希值。
定义 \(h(s,bas)\) 为蝴蝶变换后的哈希值,考虑倍增地求蝴蝶变换后的哈希值。
我们想,假设我们 \([0,2^k)\) 和 \([2^k,2^{k+1})\) 的哈希值已经处理好了,现在要合并。
\([0,2^k)\) 的数都要挪到 \(\times 2\) 的位置,\([2^k,2^{k+1})\) 要挪到 \(\times 2+1\) 的位置。
那么,\(h(s_1+s_2,bas)=h(s_1,bas^2)+bas\times h(s_2,bas^2)\)。和 NTT 是不是有点类似。
最后比较原哈希值和 \(h\) 即可。

D

维护序列,支持单点修改,区间查询前 \(k\) 大子区间和的和。
\(\sum k\le 3e5,n\le 1e5\)。

这是超级钢琴。考虑原来的做法是堆里维护每个右端点其左边还剩下的端点区间。
这显然不算优。考虑堆里维护当前还剩左端点在 \([l,r]\),右端点在 \([x,y]\) 的答案。
若 \(l=x,r=y\),就是最大子段和;若 \([l,r]\cap [x,y]=\empty\),分别取 rmq 计算即可。
考虑分割这些矩形即可。

标签:le,14,2024.8,times,fa,哈希,端点,test,bas
From: https://www.cnblogs.com/Simon-Gao/p/18359854

相关文章

  • test
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>PasswordProtectedPage</title></head><body><scripttype="text/javascript"&......
  • 8.14 PTA练习
    3-11求一元二次方程的根本题目要求一元二次方程ax2+bx+c=0的根,结果保留2位小数。(注意:0.00会在gcc下被输出为-0.00,需要做特殊处理,输出正确的0.00。)输入格式:输入在一行中给出3个浮点系数a、b、c,中间用空格分开。输出格式:根据系数情况,输出不同结果:1)如果方程有两个不相等的......
  • PSINS中test_SINS_GPS_153结果图说明
     kf.xk:估计的状态量(反馈后)kf.xfb:反馈的状态量之和如果是开环反馈,估计的零偏在kf.xk 中;如果是闭环反馈,估计的零偏在 kf.xfb 中。 PSINS主要有4 张图:1.insplot(avp); 解算的 avp 结果和平面轨迹图2. avperr=avpcmpplot(trj.avp,avp); 解算的 avp 结果、a......
  • 8.14
    1、navicat远程连接Hive数据库1、打开navicat里的mysql连接2、使用SSH隧道出现上面这个显示连接就是成功3、设置常规连接显示成功后点击确定,navicat远程连接Hive数据库成功......
  • 【4461697279】08.14.24
    08144461697279486561642050696374757265:4120736f6e6720666f7220746f646179:《ねこふんじゃった。feat.可不》A4。穿ってビンテージに特化して专门穿上特色的(vintage)衣装祈ってい「」って祈祷着「」存在わかっているんだ是明了的不自然と神は交わらない不自然的与神......
  • [考试记录] 2024.8.14 csp-s模拟赛20
    [考试记录]2024.8.13csp-s模拟赛2090+39+0+0还是太......
  • 2024.8.14 鲜花
    OnlyMyRailgun放て!心に刻んだ梦を未来さえ置き去りにして限界など知らない意味无い!この能力(チカラ)が光散らすその先に遥かな想いを歩いてきたこの道を振り返ることしか出来ないなら…今ここで全てを壊せる暗闇に堕ちる街并み人はどこまで立ち向かえるの?加......
  • docker-swarm test
    DockerService(服务)是用于定义和管理单个容器服务的概念。 DockerCompose,它是用来进行一个完整的应用程序相互依赖的多个容器的编排的,但是缺点是不能在分布式多机器上使用; Dockerswarm,它构建了docker集群,并且可以通过dockerservice在不同集群节点上运行容器服务,但是缺点......
  • java+testng+selenium实现测试用例过程的录制,生成GIF。
    1.功能需求:支持灵活配置:因为本身已有用例执行失败的截图功能,所以需要支持针对单条测试用例的配置;支持testng框架xml多线程的执行;录制内容文件小、支持调整录制每帧间隔、每条用例录制最大时长(避免用例元素未定位到时长时间录制)。2.灵活配置实现创建注解,通过在测试用......
  • TreeMapTest1
    packagecom.shujia.day15;importjava.util.Map;importjava.util.Set;importjava.util.TreeMap;/*"aababcabcdabcde",获取字符串中每一个字母出现的次数要求结果:a(5)b(4)c(3)d(2)e(1)*/publicclassTreeMapTest1{publicstaticvoidmain(String[]args)......