首页 > 其他分享 >ABC372 Review

ABC372 Review

时间:2024-09-22 19:12:25浏览次数:1  
标签:暴力 Review vector 即可 单调 ABC372

ABC372 Review

A

语言基础题

B

类似于二进制拆分,就像跳 LCA 的时候一样,尽可能多地选大的即可。

C

一个位置的字母被改变仅仅会对相邻两个位置之类的答案产生影响,暴力统计即可。

D

对于每一个 \(i\) 去暴力地统计 \(j\) 显然是不可行的,所以可以转而想一想每个 \(j\) 会对答案产生多少个 \(1\) 的贡献。

那么很显然我们要做的就是找到每个 \(j\) 左边最近的第一个比 \(h[j]\) 高的 \(h[i]\) ,显然这符合单调栈的性质,那么我们在维护一个单调栈的同时进行二分查找即可。

E

通过双指针合并两个 vector 即可,注意如果暴力做还是会超时,我们最多只会关心前 \(k\) 大的数,那么每个 vector 一旦超过了 \(k\) 的上限 \(10\) 之后我们就直接跳出维护过程即可。

标签:暴力,Review,vector,即可,单调,ABC372
From: https://www.cnblogs.com/Hanggoash/p/18425722

相关文章

  • 题解:AT_abc372_f [ABC372F] Teleporting Takahashi 2
    题意给出一个\(n\)个点的有向图,点\(i\)连向点\((i+1)\),点\(n\)连向点\(1\)。再给你\(m\)条额外边。你的初始位置为\(1\),问你移动\(k\)步的不同方案数(仅当路径不同时两个方案不同)。思路先想怎样暴力转移,显然移动\(k\)步到达一个点的方案数为所有跟这个点连边的移......
  • 题解:AT_abc372_e [ABC372E] K-th Largest Connected Components
    博客内食用更佳这道题的\(k\le10\)其实没什么用,代码区别仅在于手写平衡树和使用内置容器。这道题让查询与一个节点相连的所有点的信息,所以不难想到并查集。又因为让查询第\(k\)大,所以不难想到平衡树和线段树启发式合并。至此思路明显。我们对并查集中的每个节点开一个平......
  • 题解:AT_abc372_c [ABC372C] Count ABC Again
    博客内食用更佳乍一看好像是数据结构。我们结合题目所求内容考虑。对于每次修改,能对答案产生影响的最多只能是当前字符向前和向后延伸\(2\)个元素所构成的长为\(5\)的子串。那么我们先\(\mathcal{O}(n)\)计算出来初始答案。每次修改的时候,不妨先把\(i-2\simi\)和\(i-......
  • abc372_E
    E-K-thLargestConnectedComponents思路由于要求求所求点第\(k\)大点,所以在每个点上开一个\(set\)就可以了,因为\(k\)小于\(10\)所以直接遍历取第\(k\)大就行了,当连接两点的时候,使用并查集维护,因为要合并,但直接合并会超时,所以使用启发式合并其中有一个重要的点就是启发式合......
  • ABC372 (D,E)
    ABC372(D,E)D一道比较简单的二分查找题目。观察到每个数能成为\(j\)的条件是独立的,因此想到统计每个数能成为它前面哪些数的\(j\)。对于每个\(ed​\),二分\(1\simed-1​\)中最后一个大于\(h[ed]​\)的数的位置\(st​\),那么\(h[ed]​\)可作为\(st\simed-1......
  • AI应用的代码审查CodeReview
    AI应用的代码审查CodeReview提示词AsaDeveloper,IwanttoaskyoutoperformaGitHubMergeRequestreview.https://github.com/megadotnet/Springboot-chatapp/commit/3f7c3e2cb919c3d971d10c301da2357d635d7302Considerpreviouscommentsnotedbelowandavoidrepeati......
  • ABC371 Review
    ABC371ReviewA分类讨论题,过B模拟题,过C题意给出一张原始图\(G\),和一张待修改图\(H\),每次对\(H\)进行一次操作可以花费相应的代价删除已经存在的一条边或者是添加未存在的边。问使得两张图同构的最小代价\(W\)是多少。思路以为是什么高级的算法,但是又放在了C......
  • VS2022 17.12.0 Preview2版本对Copilot的功能增强
    前提条件,使用最新版的17.12.0Preview2,并且有有效的CopilotAI订阅,那么可以体验这些新鲜好用的功能增强了CopilotAI对IEnumerableVisualizer的可编辑表达式功能我们可以通过AI实现一些复杂的条件筛查,并且可以即时验证结果是否符合预期,对于开发和调试提供了极大的便利性......
  • ABC370 Review
    ABC370ReviewA模拟题,过B模拟题,过C很明显的贪心思路是把需要更改的字母分为两类:改大和改小。首先我们要明确的是要让输出的串尽量拥有小的字典序,且字典序比较的第一关键字是位置,第二是长度所以对于改小的部分,改的位置越靠前我们就放在越前面操作;对于改大的部分,改的位置......
  • 使用 nuxi preview 命令预览 Nuxt 应用
    title:使用nuxipreview命令预览Nuxt应用date:2024/9/8updated:2024/9/8author:cmdragonexcerpt:摘要:本文介绍了如何使用nuxipreview命令预览Nuxt.js应用,包括安装和准备环境、启动预览服务器的步骤,以及如何指定根目录和使用自定义.env文件等高级用法。通过nuxip......