ARC139F Many Xor Optimization Problems
题意:给定 \(n,m\),求 \(n\) 个 \([0,2^m)\) 的数的最大异或和的和。
瞎扯:考虑线性基,考虑消元后的,显然唯一,最大异或和为基内所有数的异或和。考虑大小为 \(k\) 的基方案数为 \(\sum\limits_{i=0}^k (-1)^{k-i}\dbinom{k}{i} 2^{ni}=(2^n-1)^k\)。
考虑有多少大小为 \(k\) 的线性基,\(f_{i,j}=f_{i-1,j}+f_{i-1,j-1}2^{i-j}\)
正解:学习了 cdw 哥哥的博客,建议参照阅读 link,这边也有 q-analog 简介 link
考虑枚举线性基大小 \(k\),\(n\) 个数恰好张成此线性空间的方案数为 \(\prod \limits_{i=1}^k(2^n-2^{i-1})\)(可以看成 \(k\) 个 \([0,2^n)\) 线性无关方案数)。
设主元依次为 \(a_1,a_2,\cdots,a_k\),则最大异或值期望为 \(\sum\limits_{i=0}^{a_k} 2^{i-1}+\dfrac 12 \sum\limits_{i=1}^k 2^{a_i}=2^{a_k}+\sum\limits_{i<k} 2^{a_i-1}-\dfrac 12\)(每个主元必须有,非主元对半开)。
考虑计数有这些主元的线性基个数,容易发现是 \(\prod \limits_{i=1}^k 2^{a_i-i+1}\),因为此前的每个非主元位都是可以选的。
答案即此三项之积,现在开始推式子,首先看下最后一项。
\[\prod \limits_{i=1}^k 2^{a_i-i+1}=2^{-\binom{k}{2}}[x^k]\prod_{i=1}^m (1+2^ix)=\prod_{i=1}^k \dfrac{2^m-2^{i-1}}{2^i-1}=2^{\binom{k}{2}}\dbinom{m}{k}_2
\]
等会,等我再鸽几个星期,会补的,别急。