hdu 2048 神、上帝以及老天爷
生活随笔
收集整理的這篇文章主要介紹了
hdu 2048 神、上帝以及老天爷
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題解:
? 本題主要思路是,算出i個人的總選擇數(shù)a和以悲劇結尾的總選擇數(shù)b,然后b/a,完成。屬于遞推題:
?
?
圖中橫杠代表人,豎杠代表簽名。Ai代表i個人共有A[i]個選擇,Bi起過度作用。因為最多有20人,可將這20個數(shù)據(jù)存儲到數(shù)組中以備調用。
? 這樣很容易得到遞推式:B[i] = A[i-2] + (n-2) * B[i-1], A[i] = (i-1) * B[i];
代碼如下:
?
#include <stdio.h>__int64 fact(int n) {__int64 ft = n;while (--n){ft *= n;}return ft; }int main() {__int64 A[21] = {0, 0, 1}, B[21] = {0, 0, 1}, ft[21] = {1, 1, 2};int n, i, t;double perc;for (i=3; i<=20; i++){B[i] = A[i-2] + (i - 2) * B[i-1];A[i] = (i - 1) * B[i];ft[i] = fact(i);}scanf("%d", &n);while (n--){scanf("%d", &t);perc = A[t]*100.0/ft[t];printf("%.2lf%%\n", perc);}return 0; }
?
轉載于:https://www.cnblogs.com/zm001/archive/2013/01/20/2875476.html
總結
以上是生活随笔為你收集整理的hdu 2048 神、上帝以及老天爷的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: struts:file 提交给actio
- 下一篇: poj 3321