首页 > 其他分享 >2024.3.17 - 3.22

2024.3.17 - 3.22

时间:2024-03-18 10:48:15浏览次数:22  
标签:2024.3 17 开关 max leq 异或 3.22 bmatrix loop

Sun

Contest

Luogu月赛两题 / ARC两题

比较简单不做题解说明

智者的考验

【JSOI2012】

有一个 \(H\times W\) 的矩阵,初始全 \(0\),共有 \(H+W\) 个开关,编号分别为 \(1\sim (H+W)\),每一个开关对应一行或一列,操作该开关会将其对应的行/列的数字取反(\(0\to 1, 1\to 0\))。

给出一个 \(H\times W\) 的 \(01\) 矩阵 \(M\),我们认为操作后的矩阵与 \(M\) 相等则操作者是不好的。

有三种操作,共计 \(n\) 个人,\(m\) 个操作:单人修改操作开关,区间修改操作开关,询问区间中不好的操作者数量。

\(H\leq 2,W\leq 3,n\leq 10^6,m\leq 1.2\times 10^5\)。


格子多一点就要 Hash 了,但是这里最多 \(6\) 个格子,直接用二进制转数值,值域 \([0,64)\)。

暴力查找所有可能的开关状态发现只有 \(16\) 种,重新标号一下,不然就是【天台MLE OIer一位】。

一次操作,等价于一次异或,可以处理出每一个开关相当于异或了什么,询问相当于查询前缀异或值。

区间 Cover 包含单点 Cover 情况,故不考虑单点修改。

发现如果要将 \([l,r]\) 修改成异或 \(x\),记前 \(i\) 个数的异或值为 \(S_i\),则相当于把 \([l,r]\) 中下标与 \(l\) 同奇偶性的 \(S\) 改成 \(S_{l-1}\oplus x\),不同奇偶性的改成 \(S_{l-1}\),并把 \([r+1,n]\) 做一个区间异或。

所以用线段树维护奇数下标Cover、偶数下标Cover、区间异或Tag、各异或值的出现次数即可通过。

码长比较恐怖。

最大连通子块和

给定一棵 \(n\) 个节点的树,\(m\) 个操作,要么单点修改点权,要么查询某棵子树的最大连通块权值和。

\(n,m\leq 2\times 10^5\)。


考虑朴素 DP,记 \(f_{i,0}\) 表示以 \(i\) 为根的子树中包含 \(i\) 的最大连通块权值和,而 \(f_{i,1}\) 表示 \(i\) 的所有子节点的 \(f_{i,0}\) 中的最大值,故:

\[f_{i,0} = \max(\underset{j\in to_i}{\sum} f_{j,0},0) \]

\[f_{i,1} = \underset{j\in to_i}{\max} \max(f_{j,0}, f_{j,1}) \]

套路性地拿出所有轻儿子,令:

\[g_{i,0} = \underset{j\in lt_i}{\sum} f_{j,0} \]

\[g_{i,1} = \underset{j\in lt_i}{\max} \max(f_{j,0}, f_{j,1}) \]

则:

\[f_{i,0} = \max(g_{i,0} + f_{h_i,0} + a_i,0) \]

\[f_{i,1} = \max(g_{i,1}, f_{h_i,0}, f_{h_i,1} ) \]

那么有:

\[\begin{bmatrix} g_{i,0} + a_i & -\infty & 0\\ 0 & 0 & g_{i,1} \\ -\infty & -\infty & 0 \\ \end{bmatrix} * \begin{bmatrix} f_{h_i,0}\\ f_{h_i,1}\\ 0\\ \end{bmatrix} = \begin{bmatrix} f_{i,0}\\ f_{i,1}\\ 0\\ \end{bmatrix} \]

然后,321上树剖,但是发现 \(f_{i,1}\) 的部分是取较大值,所以需要一个可以支持快速删除、查询最大值的数据结构(堆、多重集、平衡树……都可以)。

本题记得乘上初始转移矩阵,行向量/列向量均可,上述所写应乘列向量。

Mon

算法复杂度

【CTSC1998】

给定一个程序,包含循环(包括 breakcontinue 语句)以及做单位操作,以多项式形式输出其时间复杂度,计算常系数。

保证:程序不长,不超过 \(20\) 层循环嵌套,系数不超过 \(10^9\)。


本题是继【THUPC2019】鸭棋(码长:5.31KB)与【THUPC2021】群星连结(码长:10.39KB)后的又一道紫色大模拟,本题码长为 2.94KB。

考虑将循环抽象出来,我们可以看作是一棵树形结构,如果一个 loop 直接嵌套另一个 loop,则两个 loop 之间有边。

不妨称每一个点的复杂度是直接属于该 loop 的单位操作的复杂度,每一条边乘上下一个 loop 的循环次数。

然后就非常简单了,dfs 这棵树即可。

典型模拟部分:字符串转数字,多项式输出。

标签:2024.3,17,开关,max,leq,异或,3.22,bmatrix,loop
From: https://www.cnblogs.com/ydzr00000/p/18079823

相关文章

  • 亮点抢先看!4月16-17日,百度Create大会开设“AI公开课”,大咖带你打造赚钱工具
    3月16日,2024百度CreateAI开发者大会正式开放售票,嘉宾套票定价399元。据悉,本次大会以“创造未来(CreatetheFuture)”为主题,设有20+深度论坛、超30节AI公开课、3000平AI互动体验区和AI音乐节等精彩环节,将于4月16日至17日在深圳国际会展中心(宝安)举办。作为全球首个AI开发者大会,百......
  • 174
      这关我们可以看到代码中的判断逻辑跟上关相似,不同的是他增加了对数字的过滤,带数字的也是显示不出来的这关在查看回显的时候习惯性用了数字1,2进行查看,结果没有通过判断条件回显,注意此处我们可以用replace函数将数字修改成字母,缺陷就是如果本身就有字母,你也分不清是替换的还......
  • 【2024-03-17】连岳摘抄
    23:59我也许微不足道,我相信我注定为人所爱。                                                 ——洛尔迦一线城市生活压力大,房价高,某种程度上,对爱情与婚姻起到抑制......
  • 毕业设计3170篮球鞋推荐小程序的设计与实现【源代码+文档+调试+讲解视频】
    摘要本摘要简要介绍篮球鞋推荐小程序的开发背景、目的、主要功能以及实现的技术手段。系统分为服务器端和客户端,旨在为用户提供便捷的篮球鞋推荐和资讯服务,同时方便管理员进行后台管理。开发技术微信小程序;JSP技术;JAVA语言;MYSQL数据库微信小程序微信小程序是一种不需要......
  • 文心一言 VS 讯飞星火 VS chatgpt (217)-- 算法导论16.2 4题
    四、Gekko教授一直梦想用直排轮滑的方式横穿北达科他州。他计划沿U.S.2号高速公路横穿,这条高速公路从明尼苏达州东部边境的大福克斯市到靠近蒙大拿州西部边境的威利斯顿市。教授计划带两公升水,在喝光水之前能滑行m英里(由于北达科他州地势相对平坦,教授无需担心在上坡路段喝......
  • 173关
       这关我们可以看到代码中有判断逻辑,不允许你查找到关于flag的信息,那我们主要就是拿到flag的相关信息 第一步:先找到数据的回显位置第二部:查库查表查字段第三步:查询想要的的字段,发现没有flag相关的数据第四步:根据他的判断语句写入恶意sql对输出结果进行修改,可用方法......
  • 3.11~3.17 总结
    做题补了一部分网络流题。模拟费用流和一些意义不大(纯分讨和本质相同的题)没写。补了一道神秘数据结构(?)学习学习了复变函数的更多内容(柯西积分定理)和具体数学的第七章(看完了)。学习了初等数论第一章。模拟赛打了联合省选Day2,100+10+0=110。相当多的时间耗费在了第一题的一......
  • 2024.3
    P8037[COCI2015-2016#7]Prokletnik只考虑计算L是minR是max的情况,另一种情况是对称的。考虑维护一个单调递增的单调栈,这样我们就可以维护出当前所有“存活”着的点,然后再考虑用一个线段树维护现在存活的点的最远可行的r。对于不存活的点直接在他不存活的时候把贡献......
  • 20240317python学习
    20240317python学习      先听课,之后不会的百度。 ......
  • YC260A [ 20240317 CQYC省选模拟赛 T1 ] 伙伴(aka)
    题意给定一张无自环、重边的不连通图。让你把这个图加上一些边成为若干个环。每个节点的权值为相邻两条边为原图上的边的个数-1。求所有点的权值和最大的权值。Sol考虑拆点。集中注意力,发现连边后形成一个二分图。既然要权值最大,肯定要让原图的边留下最多。直接做最大......