首页 > 其他分享 > [总结]2023-7-13A组模拟赛

[总结]2023-7-13A组模拟赛

时间:2023-07-13 21:14:47浏览次数:41  
标签:二分 发现 13A T2 mid ST 二维 2023 模拟

[总结]2023-7-13A组模拟赛

P1 心路历程

发现今天的题目描述很直接,比昨天的好懂。

然后发现T2似乎是数据结构,好像找到了归宿,心里踏实了一点。之后就发现自己不会的计数题但是有两道:T1和T3。T4还以为是板子题,然后发现读不懂。

于是就开始干T2(终于不是从T1开始做了!!!),一开始以为要用高级算法或者数据结构:树套树、CDQ等等。然后发现对于一个二维区间判断是否有树可以直接用过二维前缀和。而且答案是可以二分的,不过要用 \(O(nm)\) 的时间判断。这样的时间复杂度是 \(O(T\log(\min(n,m)nm))\) 的。

发现数据的 \(T\) 很大,这样可能会TLE0pts。着手考虑优化。不过我实在是太蒟蒻了,这个想法怎么样都优化不了一点。

后面想到可以把矩阵中的每一个点都作为左上角,进行扩展正方形,这样是 \(O(n^2\log n)\) 的预处理,处理询问是 \(O(Tnm)\) 的,太不优美了。之后就停了很久。

大概9:30的时候觉得不能再这样什么也不打了,于是乎画了画图。发现可以剪枝。最开始我考虑的是一个正方形太大而边界容不下的情况:
image

之后就推出了对答案贡献的公式:

\[\min(x_2-i,y_2-j,f(i,j)) \]

其中 \(f(i,j)\) 代表以 \((i,j)\) 为左上角的最大边长。

经过一段时间的思考,我发现可以答案可以减少枚举量,类似于下图:

image

图中的阴影部分可以不用枚举,因为无论如何他们的贡献都不可能大于原答案了。

于是就很开心,因为好像能拿很多分。之后边打边注意卡常,全部开register,只写了main()一个函数(怕调用常数太大)。

打完、调完,已经10:40。再看T1,很容易想到设状态 \(f(i,j)\) 表示以 \(i\) 为根、\(i\) 的权值填 \(j\) 的方案数,写出了如下转移方程:

\[f(i,j)=(\sum_{i=k+1} ^m \prod_{v\in \text{son}_i} \sum_{l=1}^{i-k} f(v,l))+(\sum_{i=1} ^{m-k} \prod_{v\in \text{son}_i}\sum _{l=i+k}^m f(v,j)) \]

然后因为式子实在太抽象了,而且觉得退错了什么。于是又思考了一遍,发现可以用前缀和。以为式子推错了,还以为转移需要把所有东西乘一遍,要再打一个dfs,于是弃疗。

后面的时间也过得很抽象,只有一个小时,要打三道题,都不知道怎么分配,T2打太久了。后面好像是想了一下T3,连暴力都懒得打,之后检查了一下T2,发现一个致命错误,赶紧改过来(我一个比赛就打一道题,还打错,那就不用玩了!!!),再交一发。

后面什么也没干。

P2 赛后总结

用IOI看了一下,T260分,好像很低。

后面和fy讨论,T2似乎可以用整体二分,但不过ljr好像有更好的方法。

中午睡过头了,下午回机房,发现rnk还能20。我只打了一道题的暴力啊???

和ljr讨论了一下,正解还是用二分,不过可以用二维ST表做到 \(O(1)\) check,很神奇。

其他题都没怎么看,全在搞T2。顺便把二维ST表在不看题解的前提下自己推了出来。

然后就是讲题,T1是结论优化DP,T2我讲了自己的暴力,T3是点分治,T4是奇怪的图论,几乎都没听懂。

整个下午全在干T2,和绿老师一起呆到了6:20,其实我早就调完了,然后在等的过程中交了一下,等了很久还在running,于是放弃了,去看绿老师搞T4,后面刷新了一下,发现AC100,2982ms,一发入魂。

这次比赛还是有很多地方要改进的。比如说又把很多时间押到一道题上面。而且这次比赛的心态波动很大,几乎就是想出来一个办法,然后又否定自己,落差感极大,最后心态爆炸,其余三道题的暴力都不想写了。但事实上,没有想象的那么糟糕,如果今天多打几份暴力,可能就会进rnk10,因为比赛题目确实很难。

所以在以后的比赛里面,要做到心态及时调整,要时刻保持冷静。

P3 题目总结

T2

感觉非常难以评价的一道题。

首先我们可以延续赛时我的想法,设 \(f(i,j)\) 表示以 \((i,j)\) 为右下角的最大边长。之后我们考虑二分答案,二分完答案之后,就可以查询 \((x_1+mid-1,y1+mid-1)\to (x_2,y_2)\) 这个矩形的 \(f(i,j)\) 最大值。如果大于等于 \(mid\) 显然可行;否则,则不可行。再思考一下,发现这个查询是询问二维区间最大值,由于是静态的,而且空间、时间限制很紧,可以用二维ST表。

之后来说一下为什么只用查询 \((x_1+mid-1,y1+mid-1)\to (x_2,y_2)\) 这个矩形的 \(f(i,j)\) 最大值。首先回到之前那个公式:

\[\min(i-x_1,j-y_1,f(i,j)) \]

画图可知,画阴影部分的一定要小于等于 \(mid\) ,因为边界问题已经限制它的大小。

image

之后就做完了,要注意一下细节,反正我打错了挺多的,这里说几个:

  1. 二维ST表要先有一维ST表的预处理,就是算出来每行每列的那些值。
  2. 要注意二维ST表转移时那些 \(+1/-1\) 的问题。
  3. 注意二分,我一开始打的是:如果\(mid\) 合法,还把 \(l=mid-1\),相当于减小答案。

标签:二分,发现,13A,T2,mid,ST,二维,2023,模拟
From: https://www.cnblogs.com/xmtxlym/p/17552190.html

相关文章

  • 2023年7月13日,Stream流,Stream流的获取,Stream流中间聚合操作,Stream流终结操作,Calendar
    Stream流1.单列集合的Stream流获取packagecom.wz.stream01;importjava.util.Arrays;importjava.util.HashSet;importjava.util.List;importjava.util.function.Consumer;importjava.util.function.Predicate;importjava.util.stream.Stream;publicclassstreamDe......
  • 2023.07.13
    2023.07.13CF865DBuyLowSellHighCF32EHide-and-SeekCF266DBerDonalds\(O(n^3)\)预处理出任意两个点间的最短距离\(d(u,v)\)。若餐厅定在边\((u,v,w)\)上,且与\(u\)点距离为\(x\),则最远距离为\(\max\limits_{i=1}^{n}(d(u,i)+x,d(v,i)+w-x)\)。取......
  • HBuilder X连接MuMu模拟器指南
    一、运行MuMu模拟器查看服务端口16384二、adb环境变量配置找到HBuilderX的安装路径,进入如下目录,获取adb路径配置环境变量path添加adb路径三、adb连接端口打开cmd或者powershell窗口,执行如下命令adbconnect127.0.0.1:16384四、运行到模拟器测试设置adb......
  • SMU Summer 2023 Contest Round 3
    SMUSummer2023ContestRound3A.CurriculumVitae题意就是要求\(1\)后面不能有\(0\)的情况下的子序列最长长度,也就是求一个最长不下降子序列,不过由于这是个\(01\)序列,也可以分别做一个前缀和求出\(0\)的数量,后缀和求\(1\)的数量,最后跑一遍循环,找一个最大值即可,这里......
  • 2023-07-13 【动态规划】爬楼梯
    题目链接:爬楼梯详细:假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?示例1:输入:n=2输出:2解释:有两种方法可以爬到楼顶。1阶+1阶2阶示例2:输入:n=3输出:3解释:有三种方法可以爬到楼顶。1阶......
  • vue 模拟滚动条循环滚动
    <template><el-cardclass="card-duty"><template#header><divclass="card-header"><span>重大警情</span></div></template>......
  • 行业追踪,2023-07-13,新样式来了,更清晰地追踪行业趋势
    自动复盘2023-07-13凡所有相,皆是虚妄。若见诸相非相,即见如来。k线图是最好的老师,每天持续发布板块的rps排名,追踪板块,板块来开仓,板块去清仓,丢弃自以为是的想法,板块去留让市场来告诉你跟踪板块总结:成交额超过100亿排名靠前,macd柱由绿转红成交量要大于均线有必要给每个行......
  • H3C 模拟器 防火墙开启Web功能
    环境windows10,模拟器 HCL_V5.9.0防火墙 1在windows添加虚拟网卡我的电脑--管理--设备管理器--网络适配器(选择)--操作--(添加过时硬件)--进入向导-下一步--搜索并自动安装--选择网络适配器-2给虚拟网卡配置ip如上图中所示3在防火墙命令行配置<H3C>system-view[H3C......
  • 这还不冲?Github上的大佬总结的2023经典大厂面试题,全会拿35k
    前言2023的上半年已经结束了,但是我发现有很多朋友没能拿到自己心仪的offer,其实并不是自身能力差,而且没有充足的准备面试。耗时一个月,收集了全网最热门的大厂面试题,我们程序员与别的行业不一样,除了上学的时候要做题,我们上班了找工作还得做题!我分享的结合目前互联网公司常见的面试考......
  • 2023Tsinghua-HKUST F <最小生成树 Prim>
    题目F.Freeway-travellingSalesman代码Code//最小生成树Prim#include<iostream>#include<algorithm>#include<vector>#include<queue>#include<cstring>usingnamespacestd;usingLL=longlong;usingPII=pair<int,int......