ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

3.8 模拟总结

2022-05-29 19:32:33  阅读:174  来源: 互联网

标签:总结 子树 这道题 3.8 模拟 物品 不够 直径 考试


3.8 模拟总结

这次模拟考的不好,我认为原因有以下几点:

  1. 硬实力不够,如没想到树直径与所有点距离最小值间的关系,以及容斥的巧妙使用;
  2. 考试策略不合理,如第一题想了 2.5h 左右却没什么进展,甚至导致暴力都没打完;
  3. 考试心态不够稳,如因为在第一题受挫而导致后面的题没有进行比较有效的思考。

我认为,这几点都是我以后应该去调整,改善的。

其中,硬实力只能靠尽量多做好题并持续总结来解决,

而考试的策略以及考试的心态,都是可以在大量的模拟赛中刻意磨练,不断微调的。

就考试策略来说,目前可以尝试的考试策略,是先不一开始就把所有题看完,而是看一道想一道,

但是在卡住没思路的时候,就应该先缓一缓,例如把已经会的分打完,或者跳了看下一道题,

但要尽量提高时间的利用率和想题的效率,一定不能出现不够专心的情况,也最好不要干想、空想,

以上问题的解决方案是,尝试思考子问题并拓展,或者通过画图以及列式子来建立几何或代数直觉。

再就心态来说,我可能在考试的时候存在不够稳重,不够自信的问题,

例如想的做法假了而导致心态慌张,沉不住气,这可能会打乱考试原有的节奏和策略。

这些心态的问题,可以尝试就在平时的做题和生活中不断磨练,在细节上体现为,

做每件事之前先想好再落实,以及学习时列合理的计划并严格按照计划执行。

以上的几点可能改进,是从现在起应该去尝试,落实并调整的,下面就具体的分析以下考试的几道题。

A. 最短距离

这道题的核心在于,对于任意一张带权无向联通图,

选一个点使所有点与其距离的最大值最小,则这个点必然在图直径的中点处。

有了这个性质后,题目就等价于求基环树直径。

这个问题就相对简单了,考虑基环上每个子树内部直径的贡献,以及任两个子树间产生的贡献即可。

考虑任两个子树的贡献,一个简单的想法是枚举一棵子树,用数据结构维护另一个子树的决策集,

但也有更好写的一种,用类似 DP 的想法,即考虑对环的正反向,分别处理每棵子树之前的最长链。

从这道题中,可以看出我对做过的知识掌握度还不够,同时代码实现能力也有欠缺,

改进的大方向,分别是记录做过的题集,以及杜绝在自己写之前看别人的代码,

细化问题,也可以看出我对树的直径理解不够深刻,可以尝试多做几道这种题找找方法和感觉。

同时也有一些技巧,就是在做关于树的题时,可以考虑解决关于树的问题的一些特殊工具,

如树的直径,直径中点,重心,点分树,轻重链剖分等,以及树上的一些常用套路和结论,

如树上路径唯一,直径过同中点,点分树和路径轻链数为 \(O(\log)\),重心儿子子树大小 \(\le\lfloor\frac{n}{2}\rfloor\),

重心距所有点距离和最小且重心最多两个,给树删或添一叶子,其重心只挪最多一条边的距离,

考虑树上路径的贡献时可以从每条边左右两边点数的角度考虑,等等。

B. 排列计数

这道题的核心思路是枚举不合法的右括号并容斥,那问题就转化为对只有左括号和问号(都行)计数。

这个计数是简单的,因为问号的存在使得连续段间独立,故方案数是 \(\frac{n!}{\prod\limits_{i=1}^mc_i!}\), \(c\) 是连续段长度。

考虑如何减少枚举量,可以考虑用计算问号代替,即设 \(f(i)\) 为确定前 \(i\) 个的状态,第 \(i\) 个是问号的权值。

转移为:\(f(i)=\sum\limits_{j=1}^{i-1}\frac{(-1)^{sum(i)-sum(j)}f(j)}{(i-j)!}\),其中 \(sum(i)\) 是前 \(i\) 个字符中右括号的数量。

注意到上面的转移式是自卷的形式,故我们可以使用分治 NTT 将其优化到 \(O(n\log^2n)\) 的复杂度。

从这道题中,可以看出我对容斥的掌握度还不够,还应多加练习。

实际上,看到计数且卡住思路,就应该尝试容斥,且对限制的每一种不满足条件的组合都尝试一遍。

C. 合并数列(Monster Hunters 弱化版)

这道题的核心思路与 zjk 大神的论文里所写一致,核心是为所有的物品确立一个全序关系。

具体来说,如果最终选取物品的顺序为 \(p\),那考虑对 \(1\le i<n\),何时交换 \(p_i,p_{i+1}\) 会更优。

不难证明,可以根据两物品的代价和收益来确定一个优先级 \(q\),交换后更优当且仅当 \(q(p_i)<q(p_{i+1})\)。

那么,考虑优先级最大的物品,一定会紧跟在在其父亲选择之后,否则一定可以交换后调整成更优解,

故可以新建一个与选其父亲和其本身等价的物品,来替换其与其父亲,这样得到的新树又是一个子问题,

我们这样做到树中只剩一个物品,则原问题的最优解的信息,一定与直接选现在这个物品的信息一致。

从这道题中反应的问题是,我对学过的东西掌握不够牢,还需要反复温习以掌握得更牢固。

这种建立全序关系的题,一般以确定选取物品顺序以最大化收益的形式,作为题或题的一部分出现,

如果选取物品的顺序还具有一定的限制(例如限制形如一棵树),则我们大概率可以用上面的方式,

去找到一个与原问题最优解的信息等价且不具有任何选取限制的新问题,解决该问题就能得到答案。

标签:总结,子树,这道题,3.8,模拟,物品,不够,直径,考试
来源: https://www.cnblogs.com/GaryH/p/16324665.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有