首页 > 其他分享 >题解:AT_abc372_c [ABC372C] Count ABC Again

题解:AT_abc372_c [ABC372C] Count ABC Again

时间:2024-09-22 13:13:07浏览次数:7  
标签:Count 子串 Again 题解 sim && abc372

博客内食用更佳

乍一看好像是数据结构。

我们结合题目所求内容考虑。对于每次修改,能对答案产生影响的最多只能是当前字符向前和向后延伸 \(2\) 个元素所构成的长为 \(5\) 的子串。

那么我们先 \(\mathcal{O}(n)\) 计算出来初始答案。每次修改的时候,不妨先把 \(i-2\sim i\) 和 \(i-1\sim i+1\) 和 \(i\sim i+2\) 这三个子串的贡献减去,然后直接修改元素,最后重新计算这三个子串的贡献即可。

对于贡献计算的话,因为下标边界的问题,我们可以写一个函数方便处理。如下:

bool ch(int x)
{
	if(x<=0||x+2>n)return 0;
	return s[x]=='A'&&s[x+1]=='B'&&s[x+2]=='C';
}

提交记录

标签:Count,子串,Again,题解,sim,&&,abc372
From: https://www.cnblogs.com/Lydic/p/18425187

相关文章

  • 第31次CCF-CSP认证考试 第一题 坐标变换(其一)满分题解
    第31次CCF-CSP认证考试第一题坐标变换(其一)写在前面的话这道题偏简单,我们废话不多说,直接上代码。老系统的链接:旧系统(不过只有第三十二次以及之前的,第三十三及以后的只能在新系统里提交查看分数)。代码#include<iostream>usingnamespacestd;intmain(){ intn,m; ......
  • 正方形计数 题解
    题意简述给出一个\(n\timesn\)的格点平面,有\(q\)次询问,求有多少正方形以\((x,y)\)为某一顶点,满足这个正方形顶点均在格点上,且边长为有理数。\(l\leq10^5\),\(q\leq5\times10^5\)。题目分析看到边长为有理数,想到「毕达哥拉斯三元组」("Pythagoreantriple",简称「......
  • CF 231 E Cactus 题解(仙人掌图上找环)
    codeforces提交记录题意有一个点仙人掌图(每个点都只属于至多一个简单环),给出kkk个询问,问点x......
  • PAT甲级-1086 Tree Traversals Again
    题目 题目大意题目给出二叉树的节点个数,并给出用栈遍历树的过程。要求输出树的后序遍历,不能有多余空格。思路可以看出,栈遍历输出的是树的中序遍历,而依次push进栈的是先序遍历的顺序。题目要求后序,即已知先序和中序遍历,求后序遍历。可以先依次遍历先序,例如从先序第一个......
  • 记一次ctf题解(rsa简单部分)
    一.ctfshow1.babyrsaimportgmpy2fromCrypto.Util.numberimport*e=65537p=104046835712664064779194734974271185635538927889880611929931939711001301561682270177931622974642789920918902563361293345434055764293612446888383912807143394009019803471816......
  • B4033 [语言月赛 202409] 考试 题解
    存下输赢代价,计算时先减为平局,判断输赢,如果还是输,那继续加一变为胜利这局,判断输赢。#include<bits/stdc++.h>usingnamespacestd;#definelllonglongconstintN=1e6+10;intn;inta[N];intb[N];intc[N];intmain(){ios::sync_with_stdio(false); cin>>n......
  • 历年CSP-J初赛真题解析 | 2024年CSP-J初赛完善程序(33-42)
    学习C++从娃娃抓起!记录下CSP-J备考学习过程中的题目,记录每一个瞬间。附上汇总贴:历年CSP-J初赛真题解析|汇总_热爱编程的通信人的博客-CSDN博客#include<iostream>#include<vector>usingnamespacestd;boolisSquare(intnum){ inti=__1__; intbound=__2__......
  • 历年CSP-J初赛真题解析 | 2024年CSP-J初赛阅读程序(16-32)
    学习C++从娃娃抓起!记录下CSP-J备考学习过程中的题目,记录每一个瞬间。附上汇总贴:历年CSP-J初赛真题解析|汇总_热爱编程的通信人的博客-CSDN博客#include<iostream>usingnamespacestd;boolisPrime(intn){ if(n<=1){ returnfalse; } for(inti=2;......
  • 历年CSP-J初赛真题解析 | 2024年CSP-J初赛单项选择(1-15)
    学习C++从娃娃抓起!记录下CSP-J备考学习过程中的题目,记录每一个瞬间。附上汇总贴:历年CSP-J初赛真题解析|汇总_热爱编程的通信人的博客-CSDN博客第1题32位int类型的存储范围是()A.-2147483647~+2147483647B.-2147483647~+2147483648C.-2147483648~+2147483647D......
  • 9.21今日错题解析(软考)
    前言这是用来记录我每天备考软考设计师的错题的,大部分错题摘自希赛中的题目,但相关解析是原创,有自己的思考,为了复习:)面向对象技术——面向对象的基本概念如下所示的UML类图中,Car和Boat类中的move()方法(B)了Transport类中的move()方法A.继承B.覆盖C.重载D.聚合相关解析继......