首页 > 其他分享 >2024.3 做题记录

2024.3 做题记录

时间:2024-03-01 20:12:36浏览次数:27  
标签:结点 2024.3 log 记录 mid ge 端点 区间

222. CF1936D Bitwise Paradox

CF1004F Sonya and Bitwise OR 很像。

考虑一次询问怎么做。考虑分治,每次只计算左端点在 \([l, mid]\),右端点在 \([mid + 1, r]\) 的区间的贡献。对于每个 \(i \in [l, mid]\),维护最小的 \(j \in [mid + 1, r]\) 使得 \([i, j]\) 的或 \(\ge v\),那么 \(\max\limits_{k = i}^j a_k\) 对答案有贡献。

考虑带修怎么做。考虑套上线段树,利用线段树的分治结构,问题变成了如何合并两个区间的答案。

按位或有个很好的性质,就是前(或后)缀的或只会变化 \(O(\log V)\) 次。所以我们对于线段树上每个结点,维护前缀和后缀的或第一次变化的位置。

计算左端点在左结点,右端点在右结点的区间贡献,就枚举左结点所有后缀或第一次变化的位置作为左端点,双指针维护使得区间或 \(\ge v\) 的最靠左的右端点即可。

注意到 \(a\) 不变,可以使用 ST 表单次 \(O(1)\) 计算 \(a\) 的区间最大值。合并两个区间的复杂度为 \(O(\log V)\)。所以总时间复杂度为 \(O((n + q) \log n \log V)\)。

标签:结点,2024.3,log,记录,mid,ge,端点,区间
From: https://www.cnblogs.com/zltzlt-blog/p/18047850

相关文章

  • 使用debezium实现cdc实时数据同步功能记录
    Debezium是一个用于变更数据捕获的开源分布式平台。能够保证应用程序就可以开始响应其他应用程序提交到您数据库的所有插入、更新和删除操作。Debezium持久、快速,因此即使出现问题,您的应用程序也能快速响应,绝不会错过任何事件。Debezium默认使用Kafka来投递数据,在事务日志中记......
  • 2024.03 别急记录
    1.IOI2018-狼人/werewolf[省选/NOI-]题意简述:多次询问求是否存在一条\(s\tot\)的路径\(a_1,a_2,...,a_k\)和路径上一个点\(a_i\)使\(a_1,...,a_i\in[L,n]\)且\(a_i,...,a_k\in[1,R]\)。首先求出两棵kruskal重构树:第一棵树边权值设为\(\min(u,v)\),由大到小......
  • [CS61A-Fall-2020]学习记录四 Lecture4中有意思的点
    首先,本文不是总结归纳,只是记录一些有趣的知识点罢了assert课堂中在讲授函数,如frommathimportpidefarea_circle(r):returnr*r*pi但老师提出,当r为-10时,函数不会报错,于是引入assert来检测参数frommathimportpidefarea_circle(r):#参数应为正数......
  • 模板记录
    RMQ求Lca怕考场被卡,所以临省选重新复习一下。有个性质:若\(u,v\)不成祖先和儿子关系,则\(u,v\)的\(lca\)的\(dfs\)序一定不在\(dfn_u\)到\(dfn_v\)之间,所以我们只用找到\(dfn_u\)到\(dfn_v\)之间深度最小点\(d\)的就行了,\(d\)的父亲显然是\(u,v\)的\(lca\)......
  • 记录一次修复蓝牙故障经过(硬件管理器:“目前,这个硬件设备没有连接到计算机。(代码 45)
    记录一次修复蓝牙故障经过(硬件管理器:“目前,这个硬件设备没有连接到计算机。(代码45)”)来源https://zhuanlan.zhihu.com/p/491185819 2022年3月中旬重装win10系统,下旬欲使用蓝牙时发现没有安装驱动,便从Acer官网下载驱动进行安装,失败,遂尝试驱动人生、驱动精灵、booster9安......
  • 记账本开发记录六
    添加收入或支出布局文件<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent......
  • 记账本开发记录八
    实现第三个功能,查看账单记录。和往常相同,首先制作页面布局  <?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layo......
  • vue中draggable使用记录
    NPM或yarn安装方式yarnaddvuedraggablenpmi-SvuedraggableUMD浏览器直接引用JS方式<scriptsrc="https://www.itxst.com/package/vue/vue.min.js"></script><scriptsrc="https://www.itxst.com/package/sortable/Sortable.min.js"></scri......
  • 好用的网站记录
    1.DataV一个基于Vue的数据可视化组件库,提供用于提升页面视觉效果的SVG边框和装饰、常用的图表如折线图等和飞线图/轮播表等其他组件 在线观看地址:DataV(jiaminghi.com)github地址:GitHub-lin-xin/vue-manage-system:Vue3、ElementPlus、typescript后台管理系统  2......
  • ssts-hospital-web-master项目实战记录三十:项目迁移-Hook实现(useSystemService)
    记录时间:2024-02-29一、useSystemService模块实现service/system-service/useTerminalService.tsimporthydatefrom'@/utils/date-format'import{LogInfo}from'@/framework/utils/log-local'import{Device}from'@/types/device'impor......