• 2024-06-22Manacher学习笔记
    1.用途给定一个串,求该串中最长回文子串的长度2.算法过程2.1.预处理回文串分为两类,奇回文和偶回文,所以对称中点是不确定的,可能是字符也可能是两个字符之间的空隙所以可以在任意两个字符和开头结尾加上同一个奇怪的字符,此时的回文中心就一定是一个字符2.2.算法主体定义数
  • 2024-06-17进行一个字符串算法的总结
    本文参考字符串基础byAlex_Wei。Manacher算法这玩意是用来求回文子串的。虽然一个字符串的子串数量是\(O(n^2)\)级别的,但是回文串有更好的描述方式。注意到若一个子串\([l,r]\)是以\(mid\)为回文中心的回文串,那么将左端点和右端点朝着\(mid\)方向挪动若干单位也
  • 2024-06-1720240617
    T1洛谷P10564RubbishSorting发现长度很小,考虑二进制枚举所有非匹配位。一个给定的字符串会构成一些模板,比如\(\texttt{abc}\)能产生模板\(\texttt{abc},\texttt{a_c},\texttt{ab_},\texttt{_bc},\texttt{a_},\texttt{_b},\texttt{a},\texttt{_}\)等。对于一个查询
  • 2024-06-16Hetao BS0036 负负得正 题解 [ 黄 ] [ 组合数学 ]
    很简单的板子题,本来想放个思维难度高一点的黄,结果这把是板子局。部分分:第一个部分分就是暴力枚举。第二个部分分对\(\texttt{b}\)的位置进行枚举,然后做一下前缀和,统计一下。第三个部分分就接近正解了,是留给会正解但不会快速幂求组合数的。第四个部分分是给没有优化枚举\(
  • 2024-06-14「C++」简单模拟
    这是一个公式:\[F_n=\dfrac{\left(\frac{1+\sqrt{5}}{2}\right)^n-\left(\frac{1-\sqrt{5}}{2}\right)^n}{\sqrt{5}}\]根据大家的数学经验可以知道这是一个计算斐波那契数列的公式,那么假设我们不知道这是一个斐波纳契数列的公式,只知道他是一个简单的数学计算公式,该怎么求这个公式
  • 2024-06-09CF Round 920 (Div. 3) 笔记
    CFRound920(Div.3)笔记前言关于这个新系列,是我们的老师推荐给我们的。他说,多打Codeforces的比赛能增长我们的实战知识,提升我们的实力。我当然是非常相信的,因为老师说能提升\(200\)多分,从\(\text{CSP-J}100\)多分的蒟蒻变成\(300\)多分的大佬。那么,我会持续出Code
  • 2024-06-07快速幂
    大家好,我是Weekoder!今天的内容是快速幂!(实际上是为了讲矩阵快速幂赶出来的嘻嘻\[\texttt{Part1用处}\]快速幂,顾名思义就是快速地计算出某个数的幂,形如\(a^n\)。\[\texttt{Part2思想}\]为什么普通的幂运算慢?假设要计算\(a^n\),则需要拆分成\(a\timesa\times\cdots\times
  • 2024-06-02Daily Training & 推荐文章
    前言:放一起了。\(\texttt{DailyTraining}\)懒得写详细题解,有冒号及后面的文字的表示做了,只有成套的打算做的才会放进来,有些题是同系列的以前做过的,比较喜欢的题会用\(\texttt{*}\)标出,半颗(\(\degree\))就是普通略好,一颗一般是有趣,两颗一般是有趣或者妙妙,三颗一般是妙妙或者牛
  • 2024-06-01集训
    \(\texttt{2024/6/1NOIP}\)模拟赛\(Rk9\),分数\(100+40+0+16=156.\)\(T1\)直接\(30min\)秒了,树剖调都没怎么调。\(T2\)上来就发现了一些性质,然后\(1h\)后就想出来了正解,然后开调。但是可持久化线段树太过难写,最后发现还要两棵。我甚至只知道可持久化线段树的原理
  • 2024-05-31ARC119F 题解
    blog。被自动机做法恶心到了,现在也来恶心一下大家。\(\color{red}\textbf{以下内容强烈建议自己推一遍,几乎一半是重复的,推完会很爽,并且理解会很深。}\)\(\color{red}\textbf{以下内容不建议用}\LaTeX\textbf{书写,因为写起来像在吃大便。}\)暴力\(dp_{i,a,b}\)表示当前在\(
  • 2024-05-30QOJ 4824 Bracket-and-bar Sequences
    考虑到这个实际上没有特别好的表示方法。不如从\(n\le25\),猜想合法的序列数量不多。考虑对这个计数。类似于合法括号序计数,考虑把串拆为\(\texttt{(}\cdots\texttt{|}\cdots\texttt{)}\cdots\)来考虑。那么令\(f_i\)表示\(i\)对\(\texttt{(|)}\)组成的序列的数量。
  • 2024-05-29#[NOIP2003 普及组] 乒乓球
    传送锚点:https://www.luogu.com.cn/problem/P1042题目背景国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及。其中\(11\)分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役。华华就是其中一位,他退役之后走上了乒乓
  • 2024-05-28思维题选记
    洛谷P1146硬币翻转首先,有一个关于硬币翻转的性质,就是一个硬币只有翻转奇数次才能反面朝上,这是显然的。这启发我们构造一种能使每个硬币翻转奇数次的方案。同时,我们发现对完全相同的一组$n-1$个硬币执行两次及以上的操作是没有意义的,因为执行奇数次的话,就相当于$1$次。偶数
  • 2024-05-22loj#575. 「LibreOJ NOI Round #2」不等关系
    记事件\(A\)为「当\(s_i=\texttt<\)时\(p_i<p_{i+1}\)」,事件\(B\)为「当\(s_i=\texttt<\)时\(p_i<p_{i+1}\),且存在\(s_j=\texttt>\),满足\(p_i<p_{i+1}\)。所求即\(n(A)-n(B)\)。\(n(A)\)是好求的,相当于部分定序排列,记每个递增段的长度为\(a_1
  • 2024-05-13FFT/FWT 相关理论自我复习
    下文下标一般从\(0\)开始。卷积:记的数组\(a,b\)在运算\(\circ\)下的卷积\(a\circb=c\),其中\(c_k=\sum\limits_{i\circj=k}a_ib_j\)。直接暴力计算卷积复杂度为\(O(n^2)\),其中\(n\)为数组长度。DFT-IDFT一般快速计算特殊卷积的方法为构造DFT变换:欲构造可逆的
  • 2024-05-10THUSC & PKUSC & APIO 2024 游记
    \(\texttt{2024/5/10}=\texttt{Day0}。\)\(\texttt{Day0}\)早上八点的飞机,六点起来,七点之前必须到机场,也是非常准时的卡点了。一看,呵呵,果然是最后一个到的。我到的时候,有几个都过安检了,我还在那里不慌不忙的走。没什么波折,也是很快上飞机了。让我们观察一下各位同学在飞机
  • 2024-05-05CF1630A And Matching 题解
    题目描述有\(n\)个数\(0,1,2,\cdots,n-1\)。你需要把他们两两分组,使得每组两个数按位与的结果之和\(=k\)。如果可能,请构造出一组可能的\(\fracn2\)个数对,否则输出-1。保证\(n\)是\(2\)的幂,\(k\len-1\)思路首先我们发现,\(n\)是二的幂,所以按照二进制的角度看,这
  • 2024-04-13CF1942B Bessie and MEX 题解
    题目简述给定一个长度为$n$的数组$a$,让你构造一个等长的排列$p$,其中从$0$到$n-1$的每个整数恰好出现一次。满足对于每一个位置$a_i=\texttt{MEX}(p_1,p_2,\ldots,p_i)-p_i$,其中数组的$\texttt{MEX}$是不在该数组中出现的最小非负整数。题目分析我们发现正着做并
  • 2024-04-13春季月考 #2
    做题顺序:\(\texttt{B}\to\texttt{A}\to\texttt{C}\to\texttt{D}\to\texttt{E}\)A.牛奶首先可以发现,除了全部都是\(\texttt{L/R}\)的情况,其他的情况一定可以把数组分割成几段全部都是\(\texttt{L,R}\)的段。像是这样:\(\texttt{RRRLLRLLL}\)如果当前段是\(\texttt
  • 2024-04-11Cunning Gena 题解
    \(\texttt{ProblemLink}\)简要题意翻译很清楚。思路记\(x_i\)表示第\(i\)个人的花费,\(s_i\)表示第\(i\)个人做题集合,\(k_i\)表示第\(i\)个人需要的显示器。\(m\le20\)且不是计数,考虑dp,发现确实可以做。可以设\(f_i\)表示做题集合为\(i\)时最小花费。易
  • 2024-04-10CF1815A Ian and Array Sorting 题解
    题面。直接进入主题吧。思路题目要求非递减序列,很明显,由题目给的操作,一定可以将这个序列的前\(n-1\)项能够满足是非递减序列,最后只需要比较第\(n\)项是否大于等于第\(n-1\)项即可。解释一下为什么。对于序列\(a\),从\(a_1\)开始到\(a_{n-1}\)结束,每次对\(a_i\)
  • 2024-04-10贪心选讲-几个套路
    凸性CF1428ECarrotsforRabbits给\(n\)个胡萝卜,再\(n-k\)次选出一个胡萝卜切一刀成俩,最小化最后所有胡萝卜平方和.CF1661FTeleporters给定数轴上\(n\)个点和\(m\),要再建立若干点,使得存在一条路径\(a_1\ldotsa_n\)的\(\sum{(a_i-a_{i-1})}^2\lem\)
  • 2024-04-08我要点名一款十字线上 PVP 游戏 - 1951
    \(1900-12=1888\)。怎么rating还是这么好笑。感觉每回打cf都要破防是怎么回事?被诈骗不还是因为菜?交\(12\)发不知道自己是怎么想的。然后E也不难,但是太晚了打不动了。下次交代码之前能不能拜托先把hack测一下?占了将近一半的RE哪个不是因为没开longlong?A01字符串
  • 2024-03-22CF1930D1 - Sum over all Substrings (Easy Version)
    对于每一个\(f(i,j)\),我们考虑如何计算。我们发现,\(\texttt{1010}\)式的字符串很有用,所以这启发我们如果遇到了一个模式\(p_i=\texttt{'1'}\),那么我们可以在\(i+1\)的位置放一个\(\texttt{'1'}\)。这样我们直接处理了\(i,i+1,i+2\)。容易证明这是最优的。#incl
  • 2024-03-22轮廓线 dp
    轮廓线dp是一种和插头dp基本相同的东西,所以先看一下轮廓线dp。TilingDominoes与状压dp不同的是,轮廓线dp是通过逐格转移来进行dp的。我们用三维\(f_{i,j,k}\)来表示dp状态。其中,\(i,j\)表示当前进行到\((i,j)\)这个格子,\(k\)表示轮廓线状态。具体的,在下面