码迷,mamicode.com
首页 > 其他好文 > 详细

红包期望

时间:2020-07-22 15:28:41      阅读:75      评论:0      收藏:0      [点我收藏+]

标签:else   return   math   而且   amp   现在   开始   rac   输出   

题目描述

众所周知,在过年的时候每家每户都会发红包,现在clccle和qn在一起抢*信红包,但是她们觉得这样没有意思,便开始了计算,如果当clccle和sqn为第k个抢红包的人时候,所抢到红包金额的期望是多少?(红包的大小在[0,2n/m]中均匀随机,特别的当红包的大小小于2n/m时,最后剩下的金额会被包入最后一个红包中)

输入描述:

第一行,三个整数,m,n,T分别表示有一个红包可以被m个人领取,而且红包的总金额是n,接下来有T次询问

接下来T行,每行一个整数k,表示clccle和qn抢红包的时候是第几位

输出描述:

共T行

每行一个整数,表示clccle和qn所得到的红包大小的期望

示例1

输入

10 100 3
10
15
16

输出

10
0
0

备注:

对于全部数据

1<=m<=n<=1e18,1<=T<=50000

题解

#include<iostream>
using namespace std;
int main(){
	long long m,n;
	int T;
	scanf("%lld%lld",&m,&n);
	scanf("%d",&T);
	while(T--){
		int a;
		scanf("%d",&a);
		if(a>m){
			printf("0\n"); 
		}
		else{
			printf("%lld\n",n/m);
		}
	}
	return 0;
} 

期望就是每种结果的概率乘以结果的总和
红包大小的期望就是红包大小乘以这种大小的概率的总和,,红包大小的概率是固定的,都是\(\frac{1}{2n/m}\),但是红包的大小不确定,它是在[0,2n/m]中均匀分配的,所以就积分下,\(\int_{0}^{\frac{2n}{m}}\frac{2n}{m}d\frac{2n}{m}\),得出的结果再乘以固定的红包大小概率。最终结果得到\(n/m\)
还要注意,当排名k大于红包能分配的人数m时,主人公们所抢到红包的期望就一定是0了,因为这时根本就抢不到了。
所以当k>m时,就输出0,当k\(\leq\)m时,就输出n/m。

红包期望

标签:else   return   math   而且   amp   现在   开始   rac   输出   

原文地址:https://www.cnblogs.com/fate-/p/13360042.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!