题面:
2807. [HZOI2017]你猜是不是期望
时间限制:3 s 内存限制:256 MB
【题目描述】
lc出去浪,发现了一大堆钻石,可是钻石在有规律地消失,lc想知道最后剩下钻石的价值。
给出p-1堆钻石,第i堆钻石含有i+1个不同的钻石.第i堆钻石有1/(i*(i+1))的概率不消失,每个钻石不消失的概率为1/2,.第i堆每个钻石权值为2^(i+1),求最后获得价值的期望。
lc很认真所以,他想知道精确答案,即在膜(orz lc)p意义下的结果。而且他经常去浪,所以会有多组数据。
【输入格式】
第一行包含一个整数T,表示数据组数。接下来T组数据。
每组数据只有一行一个数,表示p。
【输出格式】
共T行,每行输出在模p意义下的期望。
【样例输入】
3
3
5
7
【样例输出】
1
4
3
【数据范围与约定】
p为奇素数,且p<=4e7。
【来源】
HZOI 2017
题意:
求:$\sum_{i=1}^{p-1}\sum_{j=1}^{i}\frac{\dbinom{i+1}{j}\cdot j\cdot 2^{i+1}}{i\cdot (i+1)\cdot 2^{i+1}} $
$Property\quad one:$
$\forall i\in [1,p-1],i\in Z,(p-1)^{\underline {i}} \equiv (-1)^{i-1}\cdot (i-1)! \pmod{p}$
$Property\quad two:$
$\dbinom{p-1}{i-1}\equiv(-1)^{i-1} \pmod{p}$
$Property\quad three:$
$\forall i\in [1,\frac{p-1}{2}],i\in Z,\dbinom{2i-1}{p-1}\equiv -1 \pmod{p}$
$Property\quad four$
$\dbinom{i}{j}\cdot j=\frac{i!}{j!\cdot (j-1)!}\cdot j=\dbinom{i-1}{j-1}\cdot i $
$\quad \sum_{i=1}^{p-1}\sum_{j=1}^{i}\frac{\dbinom{i+1}{j}\cdot j\cdot 2^{i+1}}{i\cdot (i+1)\cdot 2^{i+1}} $
$=\sum_{i=1}^{p-1}\sum_{j=1}^{i}\frac{\dbinom{i}{j-1}\cdot (i+1)}{i\cdot (i+1)} $
$=\sum_{i=1}^{p-1}\sum_{j=1}^{i}\frac{\dbinom{i}{j-1}}{i}$
$=\sum_{i=1}^{p-1}\frac{2^{i}}{i}$
$\equiv \sum_{i=1}^{p-1}2^{i}\cdot i^{p-2} \pmod{p}$
到这里可以用快速幂$O(Tnlogn)$拿到$45$分
$\quad 2^{i}\cdot i^{p-2} $
$=(-1)^{i-1}\cdot 2^{i}\cdot \dbinom{p-1}{i-1}\cdot i^{p-2} $
$=(-1)^{i-1}\cdot 2^{i}\cdot \frac{i}{p}\cdot \dbinom{p}{i}\cdot i^{p-2}$
$=\frac{(-1)^{i-1}}{p}\cdot 2^{i}\cdot \dbinom{p}{i}\cdot i^{p-1}$
$\equiv -\frac{1}{p}\cdot (-2)^{i}\cdot \dbinom{p}{i} \quad \pmod{p}$
$\quad \sum_{i=1}^{p-1}2^{i}\cdot i^{p-2}$
$=-\frac{1}{p}(\sum_{i=0}^{p}(-2)^{i}\cdot \dbinom{p}{i}-1+2^{p})$
$=-\frac{1}{p}(2^{p}-1+(1-2)^{p})$
$=-\frac{1}{p}(2^{p}-2)$
$\quad \sum_{i=1}^{\frac{p-1}{2}}i^{p-2} $
$=-\sum_{i=1}^{\frac{p-1}{2}}\dbinom{p-1}{2i-1}\cdot i^{p-2} $
$=-\frac{2}{p}\sum_{i=1}^{\frac{p-1}{2}}\dbinom{p}{2i}\cdot i^{p-1} $
$\equiv -\frac{2}{p}\sum_{i=1}^{\frac{p-1}{2}}\dbinom{p}{2i} \pmod{p}$
$\equiv -\frac{1}{p}(2^{p}-2) \pmod{p}$
$\equiv \sum_{i=1}^{p-1}2^{i}\cdot i^{p-2} \pmod{p}$
$ans=\sum_{i=1}^{\frac{p-1}{2}}i^{p-2}$
$O(\frac{p-1}{2}) $预处理每个$i$的逆元,然后求前缀和就可以了
时间复杂度$O(Tn)$
(PS:这个题和期望没有半点关系)