P4491 [HAOI2018]染色】的更多相关文章

洛谷题目链接:[HAOI2018]染色 题目背景 HAOI2018 Round2 第二题 题目描述 为了报答小 C 的苹果, 小 G 打算送给热爱美术的小 C 一块画布, 这块画布可 以抽象为一个长度为 \(N\) 的序列, 每个位置都可以被染成 \(M\) 种颜色中的某一种. 然而小 C 只关心序列的 \(N\) 个位置中出现次数恰好为 \(S\) 的颜色种数, 如果恰 好出现了 \(S\) 次的颜色有 \(K\) 种, 则小 C 会产生 \(W_k\) 的愉悦度. 小 C 希望知道对于所有可…
题目链接:洛谷 题目大意:$n$个位置染$m$种颜色,如果出现次数恰为$S$次的颜色有$k$种,则对答案有$W_k$的贡献,求所有染色方案的答案之和$\bmod 1004535809$. 数据范围:$n\leq 10^7,m\leq 10^5,S\leq 150,0\leq W_i\leq 1004535808$ 首先是要推式子的. 首先我们知道,出现次数恰为$S$次的至多$up=\min(m,\frac{n}{S})$种. 设恰好出现$S$次的颜色至少$i$种,则 $$f_i=C_m^i*\f…
$ \color{#0066ff}{ 题目描述 }$ 为了报答小 C 的苹果, 小 G 打算送给热爱美术的小 C 一块画布, 这块画布可 以抽象为一个长度为 \(N\) 的序列, 每个位置都可以被染成 \(M\) 种颜色中的某一种. 然而小 C 只关心序列的 \(N\) 个位置中出现次数恰好为 \(S\) 的颜色种数, 如果恰 好出现了 \(S\) 次的颜色有 \(K\) 种, 则小 C 会产生 \(W_k\) 的愉悦度. 小 C 希望知道对于所有可能的染色方案, 他能获得的愉悦度的和对 \(1…
LINK:染色 算是比较常规的广义容斥. 算恰好k个 可以直接转成至少k个. 至少k个非常的好求 直接生成函数. 设\(g_k\)表示至少有k个颜色是满足的 那么有 \(g_k=C(m,k)\frac{n!}{(s!)^k}\frac{(m-k)^{n-sk}}{(n-sk)!}\) 设\(f_k\)表示恰好有k个颜色是满足的 那么有 \(f_k=\sum_{j=k}C(j,k)(-1)^{j-k}g_j\) 前者可以直接求 后者需要卷积一下. 坑点:模数不是998244353 是1004535…
传送门 这一类题都要考虑推式子 首先推出题目要求的式子,枚举正好有\(s\)个颜色的种类(范围\([0,p=min(\lfloor\frac{n}{s}\rfloor,m)]\)),然后对于后面的颜色可能也有数量为\(s\)的,容斥一下即可,即\[ans=\sum_{k=0}^{p}w_k*\binom{m}{k}*\binom{n}{ks}*\frac{(ks)!}{(s!)^k}\sum_{i=0}^{p-k}(-1)^i*\binom{m-k}{i}*\binom{n-ks}{is}*\f…
显然颜色数量不会超过\(lim=\min(m,n/S)\) 考虑容斥,计算恰好出现了\(S\)次的颜色有至少\(i\)种的方案数\(f[i]\),钦定\(i\)种颜色正好放\(S\)种 有\(m\)种颜色选\(i\)种,所以乘一个\(C_m^i\) 然后这n个位置分成\(i+1\)个部分:被钦定的\(i\)种颜色,每个有\(S\)个:剩下的\(m-i\)种颜色,一共\(n-iS\)个.先看作是可重的全排列数,那么方案就有\(\frac{n!}{(S!)^i(n-iS)!}\)种.前\(i\)各部…
[BZOJ5306] [HAOI2018]染色(容斥原理+NTT) 题面 一个长度为 n的序列, 每个位置都可以被染成 m种颜色中的某一种. 如果n个位置中恰好出现了 S次的颜色有 K种, 则小 C 会产生 \(W_k\)的愉悦度. 求对于所有可能的染色方案, 他能获得的愉悦度的和.答案对 1004535809 取模 分析 显然颜色数量不超过\(tot=\min(m,\frac{n}{S})\) 我们需要求出现了\(S\)次的颜色有\(i\)种的方案数.这个东西不太好求,考虑容斥,求出现了\(S…
BZOJ 5306 [HAOI2018] 染色 首先,求出$N$个位置,出现次数恰好为$S$的颜色至少有$K$种. 方案数显然为$a_i=\frac{n!\times (m-i)^{m-i\times s}}{(m-K)!\times (s!)^K}\times C(m,K)$ 然后二项式反演一下,得到恰好的数量:$ans_i=\sum\limits_{j=i}^n (-1)^{j-i}\times a_i\times C(j,i)$ 然后展开一下就可以得到两个多项式:$A_i=\frac{m!…
BZOJ5306 [Haoi2018]染色 Solution xzz的博客 代码实现 #include<stdio.h> #include<stdlib.h> #include<string.h> #include<math.h> #include<algorithm> #include<queue> #include<set> #include<map> #include<iostream> us…
[LG4491][HAOI2018]染色 题面 洛谷 题解 颜色的数量不超过\(lim=min(m,\frac nS)\) 考虑容斥,计算恰好出现\(S\)次的颜色至少\(i\)种的方案数\(f[i]\),钦定\(i\)种颜色至少放\(S\)种 有\(m\)种颜色,那么要乘上\(C_m^i\). 然后这\(n\)个位置分为\(i+1\)个部分:被钦定的\(i\)种颜色,每个\(S\)个:剩下\(m-i\)种颜色,一共\(n-iS\)种颜色,可以看作可重的全排列数,那么就有\(\frac{n!}{…