买到同类票的概率(洛谷P2719题题解,Java语言描述)
題目要求
P2719題目鏈接
分析
沒有選擇動歸實現,排列組合就可以啦!
事先說明:C2n?2n?1<=>(2n?2n?1)C_{2n-2}^{n-1} <=> \binom{2n-2}{n-1}C2n?2n?1?<=>(n?12n?2?)
最后兩張票屬于不同類的概率:(2n?2n?1)×(12)2n?2\binom{2n-2}{n-1} \times (\frac{1}{2})^{2n-2}(n?12n?2?)×(21?)2n?2
∴\therefore∴ 此時,前 (2n?2)(2n-2)(2n?2) 張里有 (n?1)(n-1)(n?1) 張A, (n?1)(n-1)(n?1) 張B
(2n?2n?1)×(12)2n?2=(2n?2)!4n?1(n?1)!(n?1)!=(2n?2)(2n?3)?(n)[4(n?1)][4(n?2)]?[4×1]\binom{2n-2}{n-1} \times (\frac{1}{2})^{2n-2} = \frac{(2n-2)!}{4^{n-1}(n-1)!(n-1)!} = \frac{(2n-2)(2n-3)\cdots(n)}{[4(n-1)][4(n-2)]\cdots[4\times1]}(n?12n?2?)×(21?)2n?2=4n?1(n?1)!(n?1)!(2n?2)!?=[4(n?1)][4(n?2)]?[4×1](2n?2)(2n?3)?(n)?
迭代運算即可得到答案!
補一發DP的動態轉移方程:f[i][j]=(f[i?1][j]+f[i][j?1])2f[i][j]=\frac{(f[i-1][j]+f[i][j-1])}{2}f[i][j]=2(f[i?1][j]+f[i][j?1])?
AC代碼(Java語言描述)
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int num = scanner.nextInt()>>1;scanner.close();double result = 1.0;for (int i = 1; i < num; i++) {result *= (double) (i + num - 1) / (i << 2);}System.out.printf("%.4f", 1-result);} }總結
以上是生活随笔為你收集整理的买到同类票的概率(洛谷P2719题题解,Java语言描述)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【软件测试】软件测试与概率
- 下一篇: 【离散数学】基本重言蕴含式总结