uva 11427 玩紙牌 概率

2021-07-05 03:48:02 字數 1981 閱讀 2765

題目:

思路見注釋

dp[i][j]=dp[i-1][j]*(1-p)+dp[i-1][j-1]*(p);

分析狀態轉移方程的要點

1.遞推每次只要進步一點點    見

2.狀態決定了有哪些決策。第i天要麼「成功」,要麼「失敗」。//另加:還要巧妙地賦予dp[x]意義,並充分利用。

const int inf =0x3f3f3f3f;

const int maxn= 110 ;

//const int maxm= ;

//by yskysker123

double p;

int n;

char s[30];

double dp[maxn][maxn];

void getp()

for(i++; s[i] ;i++ )

p=fz/fm;

}int main()

}dp[0][0]=1;dp[0][1]=0; //先計算對於每一天,勝率不能保持勝率p以上的概率 q

for(int i=1;i<=n;i++)

}double q=0;

for(int i=0;i<=n;i++)

double ans=0;

double base=1;

for(int i=1; ;i++) //分類求解,從第一天停止,一直到第n天停止(n->無窮),如果i*base*q 足夠小就停下

if( i*base*q<0.00001 ) break;

// ans+=pow((1-q),i-1)*q;

ans+=i*base*q;

base*=(1-q);

}printf("case #%d: %d\n", ++kase,(int)floor(ans+eps) ); //關於精度問題,我現在還是很困惑

//去掉+eps是錯的

}return 0;

}

#include#include#include#include#include#include#include#include#include#include#include#include#include#include#pragma comment(linker, "/stack:102400000,102400000")

#define pi 3.1415926535897932384626

#define eps 1e-3

#define sqr(x) ((x)*(x))

#define for0(i,n) for(int i=0 ;i

#define for1(i,n) for(int i=1 ;i<=(n) ;i++)

#define ford(i,n) for(int i=(n) ;i>=0 ;i--)

#define lson num<<1,le,mid

#define rson num<<1|1,mid+1,ri

#define mid int mid=(le+ri)>>1

#define zero(x)((x>0? x:-x)<1e-15)

#define mk make_pair

#define _f first

#define _s second

using namespace std;

//const int inf= ;

typedef long long ll;

//const ll inf =1000000000000000;//1e15;

//ifstream fin("input.txt");

//ofstream fout("output.txt");

//freopen("a.in","r",stdin);

//freopen("a.out","w",stdout);

UVA11427概率期望 獨立重複事件

1 uva11427 2 概率期望 3獨立重複事件a p,n 4p 一件事情發生的概率為p 5n 最多重複n次 6要求 1 q 成功次數 實驗次數 p 結束實驗 7所求 n次實驗後,q一直小於等於p89 初始思考 10ans 1 補集 11補集 p 1 p p.這樣不好控制,因為無法手動列舉出所有的...

UVA 木塊問題 101

uva 木塊問題 101,好開森好開森。雖然花了很長時間,不過能一次就ac也是蠻開心的,用c 寫效率就是不錯 疊木塊其實是乙個二維空間,每個木塊都有縱橫座標 include include includeusing namespace std block用於記錄木塊所在位置,x是位於哪一疊木塊,y是...

UVA 非常可樂

include include include include include using namespace std struct node int vis 205 205 注意vis陣列用於 int s,n,m int cup left 3 記錄三個杯子中每個杯子的剩餘狀態 int bfs fo...