CTS2019 隨機立方體

2022-04-08 08:05:35 字數 1885 閱讀 5731

給定 \(n,m,l,k\),表示乙個大小為 \(n\times m\times l\) 的立方體,將 \(1\sim n\times m\times l\) 這些數隨機填入這個立方體中,對於乙個格仔,若這個格仔上的數比三維座標至少有一維相同的其他格仔上的數都要大的話,我們就稱它是極大的。

求極大格仔數恰好為 \(k\) 的概率,答案對 \(998244353\) 取模。

\(n,m,l\le 5\cdot 10^6,k\le 100,t\le 10\)

本來以為這是乙個神仙題...現在感覺海星...

先考慮計數。

不難發現:

恰好不好求,考慮容斥,設 \(g_k\) 表示至少有 \(k\) 個點極大的答案。

假設得到了 \(g_\) 那麼根據二項式反演,我們有:

\[f_=\sum_(-1)^\binomg_j

\]接下來考慮至少 \(k\) 個點極大的方案如何求。

答案可以分成兩個部分,選擇了 \(k\) 個點的情況下的答案,給這 \(k\) 個無標號的點分配座標的方案數。

part1

考慮分配座標的方案數。

可以視為給 \(x,y,z\) 三個維度分別選出 \(3\) 個集合,在將 \(3\) 個集合的元素進行組合的方案數。

不難發現是 \(\frac\binom\binom(k!)^3}\),請注意元素無序。

part2

考慮選擇了 \(k\) 個點的情況下的答案。

考慮到點的位置沒有影響,為了簡化問題,我們考慮將點具體為 \((1,1,1),(2,2,2)...(k,k,k)\)

問題等價於滿足這些元素比被他們約束的元素的權值大的方案數。

顯然問題可以轉換為序列計數,考慮長度為 \(n\times m\times l\) 的序列,這些元素必須在被他們約束的元素之後出現的方案數。

考慮每個點約束的三個面,實際上存在交點/交線等部分,直接統計不好考慮。

注意到每個點是平等的/等價的,那麼對於某個序列,這 \(k\) 個點本身必然存在一種順序關係,同時每種順序關係的答案是相同的。

所以考慮欽定 \((1,1,1)\) 為序列中第乙個出現的,\((2,2,2)\) 為序列中第 \(2\) 個出現的...

將這個情況下的答案乘以 \(k!\) 即可(表示任何一種排列的答案相同)。

那麼此時 \(1\) 排在序列中最前面,所以一旦乙個元素被 \(1\) 約束,他必然要排在 \(1\) 前面,即所有點中滿足存在乙個維度為 \(1\) 的點的數量。

對於 \(2\) 而言,他約束的點的數量為所有點中滿足座標均大於 \(2\) 的點中存在乙個維度為 \(2\) 的點的數量,相當於 \(n,m,l\) 均減少 \(1\) 的情況。

考慮恰好有乙個維度是 \(1\) 的點的數量,大概是這個:

\[n\times m+n\times (l-1)+(m-1)\times (l-1)

\]設這些值分別為 \(f_1,f_2...f_k\),其字首和加 \(k\) 的和為 \(s_1,s_2...s_k\) 那麼答案為:

\[k!\times (nml-s_k)!\times \binom\times \binom\times f_k!\times ....\times \binom\times f_1!

\]即:

\[k!\times (nml)!\prod_i^k\frac}

\]由於要乘以 \(\frac\),所以這一部分消去了。

最終的答案就是:

\[k!\prod_^k \frac\times \frac}m^}l^}}

\]即:

\[\prod_i^k \frac\frac

\]問題在於求逆元,這個可以線性求逆元,just a trick

然後這道題就做完了。

複雜度 \(\mathcal o(t\cdot \min(n,m,l)+\max(n,m,l))\)

CTS2019 CTSC2019 隨機立方體

loj 首先看到這個恰好 k 個可以很輕鬆的想到容斥,這個東西就是乙個二項式反演.接著我們思考如何求恰好 i 個合法的個數?設 dp i 為所求,f i prod n j m j l j g i n times m times l n i times m i times l i h i h time...

loj3119 CTS2019 隨機立方體

乙個 n m l 的立方體等概率填入 1 nml 定義乙個位置是極大的當且僅當這個位置比三位座標的至少一維與之相等的位置的值都大 詢問極大值恰好有 k 個的概率 1 le n,m,l le 5000000 1 le k le 100 1 le t le 10 include define ll lo...

題解 CTS2019 珍珠

cts2019 珍珠 有 n 個在 1,d 內的整數,求使可以拿出 2m 個整數湊成 m 個相等的整數對的方案數。資料範圍 0 le m le 10 9 1 le n le 10 9 1 le d le 10 5 非常巧妙的題,主要要用到二項式反演 指數級生成函式和ntt。做個廣告,這是我讀過最好的...