通過考試(京東2017實習生真題)

2021-07-30 18:36:03 字數 980 閱讀 2177

題目描述

小明同學要參加一場考試,考試一共有n道題目,小明必須做對至少60%的題目才能通過考試。考試結束後,小明估算出每題做對的概率,p1,p2,…,pn。你能幫他算出他通過考試的概率嗎?

輸入 輸入第一行乙個數n(1<=n<=100),表示題目的個數。第二行n個整數,p1,p2,…,pn。表示小明有pi%的概率做對第i題。(0<=pi<=100)

樣例輸入

4 50 50 50 50

輸出 小明通過考試的概率,最後結果四捨五入,保留小數點後五位。

樣例輸出

0.31250

時間限制

c/c++語言:1000ms其它語言:3000ms

記憶體限制

c/c++語言:65536kb其它語言:589824kb

解題思路

動態規劃,假設dp[i][j]表示i道題,答對j道題的概率,與子問題的遞推關係如下公式:前i-1已經答對j道,第i道題為答對。前i-1答對j-1道題,第i道題答對。

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

程式設計是得注意初始條件,上公中i,j從1開始。初始條件的設定:dp[0][0]=1;dp[i][0]=dp[i-1][0]*(1-p[i]);

#include

#include

#include

#include

using

namespace

std;

int main()

dp[0][0]=1;

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

}int mi=ceil(0.6*n);

double res=0;

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

printf("%.5f",res);

}

站隊(京東2017實習生真題)

題目描述 有一條很長的隊伍,隊伍裡面一共有n個人。所有的人分為三類 警察,小偷和普通人。將隊伍裡面的人從前到後由1到n編號,編號為i的人與編號為j的人的距離為i與j之差的絕對值。每乙個警察有乙個能力值x,表示他能夠監視與他距離不超過x的所有人,小偷被警察發現當且僅當他被乙個或多個警察監視到。你知道在...

動態規劃 通過考試(京東實習生筆試題)

題目描述 小明同學要參加一場考試,考試一共有n道題目,小明必須做對至少60 的題目才能通過考試。考試結束後,小明估算出每題做對的概率,p1,p2,pn。你能幫他算出他通過考試的概率嗎?輸入 第一行乙個數n 1 n 100 表示題目的個數。第二行n個整數,p1,p2,pn。表示小明有pi 的概率做對第...

拍賣(京東2017實習生招聘真題)

題目描述 公司最近新研發了一種產品,共生產了n件。有m個客戶想購買此產品,第i個客戶出價vi元。為了確保公平,公司決定要以乙個固定的 產品。每乙個出價不低於要價的客戶將會得到產品,餘下的將會被拒絕購買。請你找出能讓公司利潤最大化的售價。輸入 輸入第一行二個整數n 1 n 1000 m 1 m 100...