首页 > 其他分享 >CF1615F O(n) solution

CF1615F O(n) solution

时间:2023-09-01 11:08:56浏览次数:54  
标签:个数 solution bt CF1615F ge 答案 bs binom

\(O(n)\) 做法,目前 CF 最优解。

首先,考虑如何计算两个串的答案。

把奇数位置的值取反,那每次操作相当于 \(01\to10\) 或 \(10\to 01\)。于是当两个串 \(1\) 的个数相等时可以达成。

可以看作若干个 \(1\) 在一条链上移动到新的位置。答案为距离之和,把移动贡献均摊到每条边上,那每一条边的贡献就是 两个串\([1,i]\) 中的 \(1\) 个数的差值。

枚举 \([1,i]\) 中两个串 ? 处填写 \(0\) 的差值个数,那另一边 \([i+1,n]\) 中 ? 处填写 \(0\) 的差值个数确定。

如果确定了一边的 ? 处填写 \(0\) 的差值个数,那枚举第一个串中的 \(0\) 个数,一边的答案形如:

\[\sum_j\binom{A}{j}\binom{B}{j+d} \]

\[\sum_j\binom{A}{j}\binom{B}{B-j-d} \]

可以用范德蒙德卷积,化成一个组合数:

\[\binom{A+B}{B-d} \]

另一边也相同,方案数就是两边乘起来。于是可以得到 \(O(n^2)\) 的做法。

// s[i]='0/1' -> s[i]=0/1.
// s[i]='?' -> s[i]=2.
For(i,0,2) as[i]=at[i]=bs[i]=bt[i]=0;
For(i,1,n) ++bs[s[i]],++bt[t[i]];
modint res=0;
For(i,1,n-1){
	--bs[s[i]],--bt[t[i]];
	++as[s[i]],++at[t[i]];
	For(j,-n,n)
		res+=C(as[2]+at[2],at[2]-j-as[0]+at[0])
			*C(bs[2]+bt[2],bt[2]+j-bs[0]+bt[0])
			*(j>0?j:-j);
}

观察这个式子,发现我们每次要求的形如:

\[\binom{A}{A_2-j}\binom{B}{B_2+j}|j| \]

要求这个答案 \(n\) 次,并且每次的 \(A+B,A_2+B_2\) 为定值。

这个式子很像范德蒙德卷积,考虑把绝对值先拆成 \(|j|=(-j)+(2j)[j\ge 0]\).

第一部分要求 \(\binom{A}{A_2-j}\binom{B}{B_2+j}j\). 可以变成:

\[\binom{A}{A_2-j}\binom{B}{B_2+j}(B_2+j) - \binom{A}{A_2-j}\binom{B}{B_2+j}B_2 \]

组合数收缩公式:

\[\binom{A}{A_2-j}\binom{B-1}{B_2+j-1}B - \binom{A}{A_2-j}\binom{B}{B_2+j}B_2 \]

再用范德蒙德卷积:

\[\binom{A+B-1}{A_2+B_2-1}B-\binom{A+B}{A_2+B_2}B_2 \]

于是可以单次 \(O(1)\)。

第二部分要求 \(\binom{A}{A_2-j}\binom{B}{B_2+j}j[j\ge 0]\).

用相同的方法变成:

\[\binom{A}{A_2-j}\binom{B-1}{B_2+j-1}B[j\ge 0] - \binom{A}{A_2-j}\binom{B}{B_2+j}B_2[j\ge 0] \]

两部分是相同的,只考虑其中一部分,那就是要求:

\[\binom{A}{A_2-j}\binom{B}{B_2+j}[j\ge 0] \]

\[\binom{A}{j}\binom{B}{A_2+B_2-j}[j\le A_2] \]

由于 每次的 \(A+B,A_2+B_2\) 为定值,设 \(S_1 = A+B,S_2 = A_2+B_2\)。

考虑其组合意义,相当于有 \(S_1\) 个球,其中要放 \(S_2\) 个黑球,并且要求前 \(A\) 个球中只有 \(\le A_2\) 个黑球的方案数。

考虑在这条链上,从 \(i\to i+1\) 的时候,\(A\) 和 \(A_2\) 都只会有 \(O(1)\) 的变化。如果能 \(O(1)\) 移动 \(A±1,A_2±1\) 并且实时维护答案,那就能做了。

如果 \(A_2\to A_2+1\),答案只需要加上新的贡献 \(\binom{A}{A_2+1}\binom{S_1-A}{S_2-(A_2+1)}\)。

如果 \(A\to A+1\),答案会减少。再考虑其组合意义,减少的量就是“第 \(A_2+1\) 个黑球放在 \(A+1\) 位置”的方案数。于是答案只需要减去 \(\binom{A}{A_2}\binom{S_1-A-1}{S_2-A_2-1}\).

于是我们解决了 \(O(1)\) 移动端点的问题,整个问题可以 \(O(n)\) 解决。

Submission

顺便吐槽一句,为什么其他题解都用 dp 而不是组合数啊。

标签:个数,solution,bt,CF1615F,ge,答案,bs,binom
From: https://www.cnblogs.com/Rainbowsjy/p/17671318.html

相关文章

  • 2023.08.29T3 - summer - solution
    summerProblemSolution挺好的题,题解也写得很清楚,因此我不过是把题解抄一遍。赛时打了\(40\)分,然后挂了\(20\)分,因为不会前缀和(这个人暴力求区间和,铸币吧)。前\(40\)分就是记忆化搜索+单调栈:首先考察对于一个确定的序列,如何求出一段区间的权值和。那么首先就要知道如......
  • 2023.08.24T3 - brain - solution
    brainProblem给定一棵以\(1\)为根的树,给定树上所有点权与边权。记\(d(i,j)\)表示\(i\)到\(j\)的路径长度。定义一棵树的权值为:\[\sum\limits_{i=1}^{n-1}\sum\limits_{j=i+1}^{n}a_{i}a_{j}d(i,j)\]定义一次对点\(i\)的改造操作为:删掉\(i\)与其父节......
  • IPQ5018|Unlocking Affordable WiFi 6: The Ultimate Solution
    IPQ5018|UnlockingAffordableWiFi6:TheUltimateSolutionIntheeraoflightning-fastconnectivitydemands,findingtheperfectsynergybetweenperformance,efficiency,andcost-effectivenessisparamount.IntroducingtheDR5018-aWiFi6solutionthat......
  • Coreference Resolution 对于OntoNotes 5.0数据集的预处理操作
    1.下载数据集1.1下载Conll-2012相关数据集和脚本1.2下载OntoNotes......
  • Solution to AT_abc285_g Tatami
    Statement请用若干个\(1\times1\)和\(1\times2\)的瓷砖(可以旋转)不重叠地完全覆盖\(H\timesW\)的长方形网格。第\(i\)行第\(j\)列的网格有字符\(c_{i,j}\),含义如下:1:该网格只能用\(1\times1\)的瓷砖覆盖。2:该网格只能用\(1\times2\)的瓷砖覆盖。?:该网......
  • [SOLVED] 终端下screenfetch返回 Resolution: No X Server
    "Linux图形界面多数使用的是XServer,我们有时需要关闭/重启它.比如:安装NVIDIA的驱动程序时,就需要先关闭Xserver;希望让系统以server方式运行,关闭桌面环境以降低不必要的性能损耗."[1] 检查图形界面XServer的状态:systemctlstatuslightdm.service显示了li......
  • AT_abc251_g Intersection of Polygons Solution
    AT_abc251_gIntersectionofPolygonsSolutionPreface由于某些\(\LaTeX\)的原因,本文的公式无法正常查看,建议读者访问博客以获得正常阅读体验。Statement逆时针地给定一个有\(N\)个顶点,第\(i\)个顶点为\((x_i,y_i)\)的凸包\(P_0\)。再给出\(M\)个向量\((u_i,v......
  • IPQ5018 SoC with QCN9074 VS QCN6122|IIOT Wifi6 solution|Wallys
    IPQ5018SoCwithQCN9074VSQCN6122|IIOTWifi6solution|WallysIntheeraofIndustry4.0,reliableandefficientwirelessconnectivityiscrucialforindustrialandenterpriseapplications. That'swhereWallyscomesinwithourcutting-edgeCost-Effe......
  • Solution Set of NFLS SImulations
    在nfls的最后一天,来记录一些似乎有意义的题吧。没有原题(或者我忘了原题)的就简要写下题意,不放原题面了。目录T2(CF1329EDreamoonLovesAA)T1(CF1184D2ParallelUniverses(Hard))T3(CF1434EAConvexGame)T1怪兽(树上MonsterHunting)T2切割T3导弹T1(CF1023GPisc......
  • 【论文解析】EJOR 2011 A clustering procedure for reducing the number of represen
    论文名称:AclusteringprocedureforreducingthenumberofrepresentativesolutionsintheParetoFrontofmultiobjectiveoptimizationproblems动机假设一个三目标优化问题\[\begin{aligned}&\text{Availability:}\max_\thetaJ_1(\theta)=\max_{\theta_p,......