国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Codeforces Round #333 (Div. 2)E

2019-11-11 06:46:46
字體:
來源:轉載
供稿:網友

E. Kleofá? and the n-thlon time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard output Kleofá? is participating in an n-thlon - a tournament consisting of n different competitions in n different disciplines (numbered 1 through n). There are m participants in the n-thlon and each of them participates in all competitions.

In each of these n competitions, the participants are given ranks from 1 to m in such a way that no two participants are given the same rank - in other Words, the ranks in each competition form a permutation of numbers from 1 to m. The score of a participant in a competition is equal to his/her rank in it.

The overall score of each participant is computed as the sum of that participant’s scores in all competitions.

The overall rank of each participant is equal to 1?+?k, where k is the number of participants with strictly smaller overall score.

The n-thlon is over now, but the results haven’t been published yet. Kleofá? still remembers his ranks in each particular competition; however, he doesn’t remember anything about how well the other participants did. Therefore, Kleofá? would like to know his expected overall rank.

All competitors are equally good at each discipline, so all rankings (permutations of ranks of everyone except Kleofá?) in each competition are equiPRobable.

Input The first line of the input contains two space-separated integers n (1?≤?n?≤?100) and m (1?≤?m?≤?1000) — the number of competitions and the number of participants respectively.

Then, n lines follow. The i-th of them contains one integer xi (1?≤?xi?≤?m) — the rank of Kleofá? in the i-th competition.

Output Output a single real number – the expected overall rank of Kleofá?. Your answer will be considered correct if its relative or absolute error doesn’t exceed 10?-?9.

Namely: let’s assume that your answer is a, and the answer of the jury is b. The checker program will consider your answer correct, if .

Examples input 4 10 2 1 2 1 output 1.0000000000000000 input 5 5 1 2 3 4 5 output 2.7500000000000000 input 3 6 2 4 2 output 1.6799999999999999 Note In the first sample, Kleofá? has overall score 6. Nobody else can have overall score less than 6 (but it’s possible for one other person to have overall score 6 as well), so his overall rank must be 1.

這個題的關鍵點在于他沒法確切的求出每個人期望… 看上去一團糟…. 第一次做這種題… 哇太弱了還是看了一晚上題解才學會的 除了自己以外其他人都是一樣的 那么只要求一個人的概率就夠了 那么你當前場次的分數可以從上一場的當年分數-1到-m里去找 每一個都是m-1分之一的概率轉移過來 要注意的是自己的那個不能轉移過來 初始設定為m-1 是因為那個值要處以m-1 實際上每一個第一場的概率一定都是1

#include<iostream>#include<algorithm>#include<cmath>#include<cstdio>using namespace std;int tu[101];double he[101][100101], dp[101][100101];int main(){ int n, m,ss=0; cin >> n >> m; if (m == 1) { printf("1.000000000000"); return 0; } dp[0][0] = m - 1; for (int a = 1;a <= n;a++)cin >> tu[a],ss+=tu[a]; for (int a = 1;a <= m*n+1;a++)he[0][a] =m-1; for (int a = 1;a <= n;a++) { he[a][0] = he[a][1] = 0; for (int b = 1;b <=n*m;b++) { int zuo = max(0, b - m), you = b; dp[a][b] += (he[a - 1][you] - he[a - 1][zuo])*1.0 / (m - 1); if (b - tu[a] >= 0)dp[a][b] -= dp[a - 1][b - tu[a]] / (m - 1); he[a][b+1] = he[a][b] + dp[a][b]; } } printf("%.9f", he[n][ss] + 1);}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鄂尔多斯市| 沁源县| 西平县| 甘泉县| 长葛市| 濮阳县| 怀仁县| 永吉县| 海兴县| 福建省| 清涧县| 文山县| 右玉县| 耒阳市| 阿尔山市| 韩城市| 卢龙县| 屯留县| 宁蒗| 轮台县| 瑞丽市| 安阳县| 化德县| 蒙自县| 河间市| 滨州市| 长阳| 凉城县| 禹城市| 巴青县| 金昌市| 蒙山县| 岳池县| 衡山县| 祁门县| 庄浪县| 青州市| 双柏县| 大关县| 临猗县| 丽水市|