当前位置: 首页 > news >正文

25.11.14

P13046

求出每个位置后面第一个变成 \(d\) 倍数的位置就能线性 dp 了,又是树上结构的样子,略去不叙。

前面这块有个很抽象的基环树做法,我们不要学习这个。

考虑为啥不能直接哈希,因为可能没有逆元,那么发现其实是 CRT 拆 2,5 出来剩个 \(x\),要求 \(\bmod x\) 以及模那一堆 2,5 都是 0。

小学奥数告诉我们,2,5 的 \(k\) 次幂倍数只需看最后 \(k\) 位,而注意到最多 20 个 \(2\) 的因子,于是只需加入桶前判一下前 20 个即可。

长度小于 20 的部分暴力做即可。

P5980

神秘题。

考虑先把所有 item 完全拆分,得到若干 \(m_i\)\(a_i\),最后要若干 \(m_i\)\(b_i\)

看起来就需要两两对应。

考虑我们一些增一些降,肯定是需要守恒的。

而且因为我们混合操作会不停削减方差,感知上就是一个无序变有序的过程。

剩下的纯人类智慧。

用向量来表示一个 item,合并就是向量加,这样向量会被不断拉直,因此有解的必要条件就是原向量的凸包完全包含目标向量的凸包。

维护很容易,考虑充分性:起点终点相同,一定能缩。

P5987

笑点解析:和头一天的题完全一样。

一个矩形有 \(2\times 2\) 种方案,显然是行列独立的,于是变为一维问题。

要求被所有区间覆盖的权值和最大,有个逆天做法是转成不被所有区间覆盖的权值和最小(显然可以翻转一个方案出来),就可以硬套头天的做法。

当然这两个问题都有很简单的哈希做法:给这个区间覆盖一个随机的哈希值,那么最后哈希值相同的位置大概率被所有区间覆盖。

P5983

维护联通性显然是困难的,考虑我们维护一条路径,直到它加入了障碍前都是可用的。

加入障碍后我们需要往一侧拐,但我们不知道是否合法,也不知道该选哪侧。

第二个矛盾看着容易解决:如果我们这个路径是贴着边缘的,那么显然只有一侧能拐。

而判断合法性呢?好像是对的。

其实不对,我们可能拐到对面走不动了,于是我们维护两条贴着边缘的路径,如果拼上了就说明堵死了。

用一些你讨厌的数据结构和搜索即可维护,复杂度考虑每次拐都会永久剔除一个障碍,所以是均摊线性次。

CF1804G

注意到这个除以二下取整会在对数次内把极差砍成一,然后就循环了。

于是对于这种情况加速即可,需要势能线段树和较复杂的暴力和循环间切换。

http://www.jsqmd.com/news/40565/

相关文章:

  • 题解:AtCoder ARC209D A_A_i
  • 代码制作数学动画 python manim jjmpeg - 何苦
  • 重组融合蛋白技术概述
  • OpenEuler安装宝塔
  • 20230827 - Balancer 攻击事件:价格操纵 + 精度丢失的经典组合拳
  • 我的标题2
  • 破解cocos creator 2.3.2, 让它支持M芯片
  • Kotlin Coroutines
  • 我的标题
  • 深入解析:软考中级-系统集成项目管理工程师**的超详细知识点笔记。
  • GeoScene Pro试用申请
  • 题解:P13573 [CCPC 2024 重庆站] Pico Park
  • 【AI智能体】Coze 提取对标账号短视频生成视频文案实战详解 - 指南
  • Java Benchmark使用
  • 实用指南:12-机器学习与大模型开发数学教程-第1章1-4 导数与几何意义
  • 基于Vue社区共享游泳馆预约高效的系统n897q36e (工具+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • docker登录容器镜像仓库
  • 吴恩达深度学习课程二: 改善深层神经网络 第三周:超参数调整,批量标准化和编程框架(一)超参数调整
  • Go-秘籍-全-
  • Kotlin中的flow、stateflow、shareflow之间的区别和各自的功能 - 教程
  • 非离散网络流——P3347 [ZJOI2015] 醉熏熏的幻想乡
  • [note] 素数判定与分解质因数
  • 不能识别adb/usb口记录 - 实践
  • 恭喜自己,挑战成功! - Ghost
  • 如何在测试覆盖不足后补充验证
  • react动态表单
  • 完整教程:PDFBox - PDDocument 与 byte 数组、PDF 加密
  • Dark Side of the Moon
  • flask:自定义异常
  • 图片合集