摘要:
考虑容斥,令$f(S)$为要求$\forall p\in S,p$可以作为起点的方案数,答案即$\sum_{S\subseteq[0,n)}(-1)^{|S|}f(S)$ 关于计算$f(S)$,对于第$i$个机器人而言,$p$可以作为起点实际上即给出了$X_{i}$和$Y_{i}$每一位上的一种限制 阅读全文
摘要:
为了方便,用$N=10^{5}$来描述复杂度 (对原串建立SAM)注意到$\sum|w|=qk\le N$,考虑对$q$和$k$的大小关系分类讨论: 1.若$q\le k$,即询问次数较少,将其与原串建立一个广义SAM,然后找到枚举所有区间,倍增找到该区间对应子串的位置,该right集合大小即为答案 阅读全文
摘要:
考虑将坐标轴旋转45°,即将$(x,y)$变成$(x+y,x-y)$,显然有$|x|+|y|=\max(|x+y|,|x-y|)$ 换言之,从新坐标系来看,问题即等价于——初始在$(0,0)$,每一次两维坐标(分别)随机$\pm 1$,求$n$次中到原点的切比雪夫距离(即$\max(|x|,|y|) 阅读全文
摘要:
显然每种颜色的花是独立的,可以分别求出答案后取$\max$ 对于某种颜色$C$,建立一张二分图,左右分别为$n$行$n$列,且第$i$行和第$j$列有边当且仅当$c_{i,j}=C$ 此时,问题即对边染色,并要求相同颜色的边没有公共端点,并最少化颜色数(包含初始颜色) 这是二分图的边着色问题,其答案 阅读全文
摘要:
不难发现,操作1可以看作如下操作:对于删去$a_{1},a_{2},...,a_{k}$后的每一个连通块(的点集)$V$,令$\forall x\in V,x$的收益加上$s$(其中$s=\sum_{x\in V}c_{x}$) 考虑建立类似于虚树的东西,即将每一个$a_{i}$连到第一个在$a_{ 阅读全文
摘要:
模板题:在有向图中,对每一个点求以其为根的最小(外向)生成树 (当图是强连通时)可以使用朱刘算法,算法过程如下: 1.对每一个节点,选择指向该点的边权最小的边,即得到一张子图 2.任选这张子图的一个简单环,并对这个环执行以下操作—— (1)对于环上的边$(u,v)$,将所有以$v$为终点的边边权 阅读全文
摘要:
称序列$\{a_{1},a_{2},...,a_{n}\}$的答案为$\min_{0\le i\le n-k}(\max_{i<j\le i+k}a_{j})$(特别的,若$n<k$则为$\infty$) 将序列按$k$分段,每一段长度为$k$(最后一段长度可以小于$k$),那么恰有$ 阅读全文
摘要:
将一个格子看作一个节点,相邻(有公共边)的同色格子之间连边,那么由前两个条件即要求图恰被分为两个非空连通块(由于$n,m\ge 3$,显然不能不使用某种颜色) 下面,来分析图中的简单环,其对应于网格图上即会将网格图分为了两部分,简单分类讨论不难发现只有这个环恰有最外圈所有节点构成时仍能满足第3个条件 阅读全文
摘要:
注意到仅关心于权值大小,预处理出$F_{i}(n)$表示$a_{1},a_{2},...,a_{n}$中恰填$i$种不同的数的方案数,那么显然答案即为$\sum_{i=1}^{\min(n,m)}{m\choose i}F_{i}(n)$,可以$o(n)$ 阅读全文
摘要:
令$(x,y,z)$为狙击手的坐标,其攻击范围即以$(x,y,z)$为中心的$(2k)^{3}$的立方体 为了避免$k$的影响(二分答案会多一个$\log$),不妨将其变为以$(x,y,z)$为左下角的$(2k)^{3}$的立方体,注意到这样仅仅是实现了平移,并不影响答案 由此,注意到任意时 阅读全文
摘要:
二分$T$和$S$第一个不同的位置,即需要对于$s$,判定是否存在$T[1,s]=S[1,s]$且满足条件的$T$ (注:这里的条件不包含$T$的字典序最小) 显然$T[1,s]$已经确定,记其中第$i$种字母出现次数为 阅读全文
摘要:
称区间$[i,j]$为普通区间,当且仅当$j-i\ge 3$且其操作两次内不会变为给定区间 结论:若$[i,j]$为普通区间,则$[i,j]$和$[i+1,j-1]$的状态(是否先手必胜)相同 (关于这个结论的正确性,不难分类讨论得到) 由此,对于普通区间不断缩小使其变为非 阅读全文
摘要:
为了避免浮点运算,不妨将$f_{i}$乘上$C=10^{2}$,问题即求$\max_{S\subseteq [1,n]}\frac{\sum_{i\in S}(C^{2}-(\sum_{j\in S}f_{j}-f_{i})f_{i})s_{i}}{C^{2}}$ 记$F=\sum 阅读全文
摘要:
约定:$[x^{n}]F(x)$表示多项式$F$的$n$次项系数 对于多项式$F$,定义$F$的复合逆$\hat{F}$为满足$F(\hat{F}(x))=x$的多项式 性质1:$F$存在复合逆的充要条件 阅读全文
摘要:
不妨假设$x\le y$,可以通过翻转整个格子序列来调整 令$a_{i}$为$i$到$y$的期望步数,显然有方程$a_{i}=\begin{cases}0&(i=y)\\\frac{\sum_{j=i+1}^{n}a_{j}}{n-i}+1&(i<y)\\\frac{\sum_{j=1} 阅读全文
摘要:
令$f(a)_{i}=\min_{i<j\le n,a_{i}=a_{j}}j$(特别的,若不存在$j$则令$f(a)_{i}=n+1$),则有以下性质: 1.对于$b_{i}$,存在$a_{i}$使得$f(a)=b$,当且仅当$i<b_{i}$ 阅读全文
摘要:
类似于[NOI2021]轻重边的逆过程,操作1即为对$u$执行access(根为1),$dist(u,v)$即为$u$到$v$的虚边数 对前者用LCT维护,并记录轻重边的切换,显然切换总量为$o(n\log n)$ 换言之,问题即要支持: 1.修改一条边的边权(实边边权为0,虚边边权为1), 阅读全文
摘要:
(以下默认$A_{0},D_{0},P_{0},K_{0}$都为非负整数) 显然存活轮数$S=\lceil\frac{H_{0}}{C_{p}\max(A_{1}-D_{0},1)}\rceil$是一个关键的变量,且根据数论分块其仅有$o(\sqrt{H_{0}})$种取值,不妨利用数论 阅读全文
摘要:
先考虑$x=y$的情况,此时即是一个平等博弈,因此考虑$sg$函数 具体的,有$sg(n)=\begin{cases}0&(n=0)\\mex(\{sg(n-i)\mid 1\le i\le n,i\ne x\})&(n\ge 1)\end{cases}$,简单计算$sg(n)$的前几项,不难发现规 阅读全文
摘要:
枚举$a$和$b$出现的次数,问题即求$$A_{i,j}=\sum_{p=0}^{L}\sum_{q=0}^{L-p}[n\mid (p-i)][n\mid (q-j)]{L\choose p}{L-p\choose q}(k-2)^{L-(p+q)}$$考虑单位根反演,即$[n\m 阅读全文
摘要:
定义$x$为$s$的周期,当且仅当$\forall 1\le i\le |s|-x,s_{i}=s_{i+x}$(字符串下标从1开始) 令$per(s)$为$s$的正周期构成的集合,$\min per(s)$为$s$的最小正周期,显然$\max k=\lfloor\frac{n}{\min pe 阅读全文
摘要:
问题即查询将其按照dfs序排序后,相邻两点(包括首尾)的距离和 考虑使用莫队+set维护,时间复杂度为$o(n\sqrt{n}\log n)$,无法通过 进一步的,注意到删除是可以用链表实现的,因此考虑回滚莫队: 仍以$\sqrt{n}$对原序列分块,并以左端点所在块升序为第一关键字、右端点降序为 阅读全文
摘要:
(这是一个线性的做法) 显然对于合法的区间,众数是唯一的,因此不妨枚举众数,将众数标记为1、其余数标记为-1,此时问题即求有多少个区间和大于0 考虑暴力的做法:从左到右枚举右端点,记当前前缀和为$tot$,即查询之前有多少个前缀和小于$tot$ 具体的,记$f_{i}$为(当前)有多 阅读全文
摘要:
令$f_{i}$表示以$i$为结尾的极长上升子序列个数,则有$f_{i}=\sum_{j<i,a_{j}<a_{i},\forall j<k<i,a_{k}\not\in [a_{j},a_{i}]}f_{j}$ (初始状态为前缀最小值处$f_{i}=1$,最终答案为后缀最大值处的$f_{i 阅读全文
摘要:
显然问题即求$\frac{\sum_{x\le l\le r\le y}(\max_{l\le i\le r}a_{i}+\min_{l\le i\le r}a_{i})}{(y-x+2)(y-x+1)}$ 分母显然是常数,分子中$\max$和$\min$是类似地,不妨仅考虑$\sum_{x\l 阅读全文