1. 程式人生 > >CF Educational Round 57(1096) 比賽記錄

CF Educational Round 57(1096) 比賽記錄

這裡是連結

本來想帶學弟飛的,結果自己先gg了。。。
外校高一大佬太強了orz,在我前面溜的飛起,還切了 F
哎,差一點就可以上紫名的,現在寄希望於 Good Bye 2018 了qwq
老年選手的手速果然大不如前了qwq
E題在學弟的幫助下搞懂了。大佬教學就是厲害。
那麼先說 E 吧。
比賽的時候剛了40+min,然後發現自己沒有處理單人分數上界,果斷自閉了。
現在看來這種帶上界的應該馬上聯想到容斥吧。
這題主要是求一個函式 g (

s , p , m ) g(s, p, m) s
s
是總分, p p 是人數, m m 是單人分數上界。
g
g
就是滿足單人分數不超過 m m ,總分 s s ,有 p p 個人的組合數。
考慮原始的球盒模型,要把 s s 個球放進 p p 個盒子,允許空盒的組合數是 ( s + p 1 p 1 ) s+p-1 \choose p-1 ,用擋板法可以理解。
但是有上界 m m ,所以要做做容斥。
要求的 g ( s , p , m ) = i = 0 n ( 1 ) i ( p i ) ( s + p 1 i ( m + 1 ) p 1 ) g(s,p,m)=\displaystyle\sum_{i=0}^{n}(-1)^i{p\choose i}{s+p-1-i*(m+1) \choose p-1}
這個式子的意義是什麼呢?
首先, ( p i ) p \choose i 顯然是在欽點 選取 i i 個人給他們最大分數 m m
後邊一坨是學弟幫助我理解的(sro xht orz)。
如果去掉 i i 不說,就是基本的球盒公式。
因為整個式子實際上就是在用 0 0 個人超限的情況 - 1 1 個人超限的情況 + + 2 2 個人超限的情況 - 3 3 個人超限的情況。。。
所以這一坨就是在計算有 i i 個人超限的情況。
讓這 i i 個人拿掉 i ( m + 1 ) i(m+1) 的總分後再套基本公式。
比賽的時候沒有想到容斥,球盒模型也不熟,活該gg。
比賽的時候因為一直在纏 E 題,沒有發現 F 題可做。不過下來後也沒有做出來qwq
官方給出的解法就是分類討論一波,我去。
在這裡插入圖片描述
說正話,分已知已知,未知已知,和未知未知來做。
已知已知直接算,未知未知有公式 n × ( n 1 ) 4 \frac{n\times(n-1)}{4}
未知已知也好算。拿左已知右未知來說,假設右邊有 r i g h t right 個未知,有 p p 個未知大於已知,未知總共有 x x 個,那麼已知造成的期望逆序對就是 r i g h t × p x right\times\frac{p}{x}
G 題 FFT 不會,暫時不做。