lightoj1027(数学期望与概率)

题意:

你在一个迷宫里,面前有n扇们,每个门有一个数字k;

如果k为正数,则通过这扇门,走k分钟就能出去,

如果为负数,则通过这扇门走-k的分钟回到迷宫;

走每扇门概率一样.问走出迷宫所需时间的期望值;

思路:

首先如果全是负数肯定是inf;

然后我们假设我们走出去的期望时间是d;

那么拿第三个样例举例子; d = 1/3 * 3  + 1/3( 6 + d) + 1/3 (9 + d);

意思就是每扇门被选择的概率是1/3;选选第一扇门要花3分钟出去,选第二扇门要6 + d(花6分钟返回原地,在花期望d出去);

然后根据这个式子求出d;并用分数表示;

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;

struct frac{
	int u;
	int d;
}f;

frac add(frac a, frac b) {
	if(a.d == 0)
		return b;
	frac tmp;
	int up = a.u * b.d + a.d * b.u;
	int down = a.d * b.d;
	int c = __gcd(up, down);
	tmp.u = up / c;
	tmp.d = down / c;
	return tmp;
}
int main() {
	int t, n;
	int cas = 1;
	scanf("%d",&t);
	while(t--) {
		scanf("%d",&n);
		int d = 0;
		frac num;
		num.u = 0;
		num.d = 0;
		int tmp;
		for(int i = 0; i < n; i++) {
			scanf("%d",&tmp);
			if(tmp > 0) {
				f.u = tmp;
				f.d = n;
				num = add(num, f);
			}else {
				f.u = -tmp;
				f.d = n;
				num = add(num, f);
				d++;
			}

		}
		if(d == n) {
			printf("Case %d: inf\n",cas++);
			continue;
		}
		num.u *= n;
		num.d *= (n - d);
		int c = __gcd(num.u, num.d);
		printf("Case %d: %d/%d\n",cas++, num.u / c, num.d / c);
	}
}	
时间: 2024-10-24 16:14:58

lightoj1027(数学期望与概率)的相关文章

LightOJ1408(数学期望与概率)

题意: 求投丢的概率为p; 那么如果一直投到连续中k1个,或者连续丢k2个,所需要的球的期望; 给出p,k1,k2; 思路 首先我们算出投中的概率q = 1 - p; 假设f[k] 表示已经连续投中k个了,结束比赛还需要多少球的期望; 而g[k]表示是投丢的; 那么f[k1] = g[k2] = 0; 那么我们可以知道f[k] = q * f[k +1] +p *g[1] +1; 那么最后一直递推到f[1]; 设x = p *g[1] +1; 最后整理一下就是q^k-1 * x + q ^ k

POJ2096Collecting Bugs(数学期望,概率DP)

问题: Ivan is fond of collecting. Unlike other people who collect post stamps, coins or other material stuff, he collects software bugs. When Ivan gets a new program, he classifies all possible bugs into n categories. Each day he discovers exactly one

数学1——概率与数学期望

1.什么是数学期望? 数学期望亦称期望.期望值等.在概率论和统计学中,一个离散型随机变量的期望值是试验中每一次可能出现的结果的概率乘以其结果的总和. 这是什么意思呢?假如我们来玩一个游戏,一共52张牌,其中有4个A.我们1元钱赌一把,如果你抽中了A,那么我给你10元钱,否则你的1元钱就输给我了.在这个游戏中,抽中的概率是$\frac{1}{13} ( \frac{4}{52} ) $,结果是赢10元钱:抽不中概率是$\frac{12}{13}$,结果是亏1元钱.那么你赢的概率,也就是期望值是$-

ZOJ3329-One Person Game(概率DP求数学期望)

One Person Game Time Limit: 1 Second      Memory Limit: 32768 KB      Special Judge There is a very simple and interesting one-person game. You have 3 dice, namelyDie1, Die2 and Die3. Die1 hasK1 faces. Die2 has K2 faces.Die3 has K3 faces. All the dic

[2013山东ACM省赛] The number of steps (概率DP,数学期望)

The number of steps Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 Mary stands in a strange maze, the maze looks like a triangle(the first layer have one room,the second layer have two rooms,the third layer have three rooms -). Now she st

POJ3682King Arthur&#39;s Birthday Celebration(数学期望||概率DP)

King Arthur is an narcissist who intends to spare no coins to celebrate his coming K-th birthday. The luxurious celebration will start on his birthday and King Arthur decides to let fate tell when to stop it. Every day he will toss a coin which has p

『概率和数学期望』

概率 基础概念 定义 设样本空间为\(\Omega\),若对于\(\Omega\)中的每一个随机事件\(A\),都存在实值函数\(P(A)\),满足: \(1.\) \(P(A)\geq0\) \(2.\) \(P(\Omega)=1\) \(3.\) 对于若干个两两互斥事件\(A_1,A_2,...,A_n\),有\(\sum_{i=1}^n P(A_i)=P(\bigcup_{i=1}^n A_i)\) 则称\(P(A)\)为随机事件\(A\)发生的概率. 必然事件 一定发生的事件称为必然事

概率与数学期望

这个数学知识点很容易和其他有关的内容结合起来考.其中有几个性质值得我们注意. 1.1 概率定义 我们经常会做一些随机性的实验.实验往往会给出不同的结果,我们称之为样本点.我们把所有样本点构成的集合叫做样本空间,记为\(\Omega\). 在这个样本空间里,我们称一个随机事件是样本空间\(\Omega\)的子集.这里算是扫清了过去的知识盲区:随机事件是一个集合,而不是真的是一个概念上的事件. 对于一个随机事件\(A\),我们可以定义一个数来衡量它在样本空间的"比重",那就是概率.随机事件

noip专题复习之数学(5)——概率与数学期望

1.全概率公式: 将样本分成若干个不相交的部分B1,B2,...,Bn,则P(A)=P(A|B1)P(B1)+P(A|B2) P(B2)+...+P(A|Bn)*P(Bn).(P(A|B)是指在B事件发生的条件下,事件A发生的概率. 使用全概率公式的关键是"划分样本空间",只有把所有可能不重不漏地进行分类,并算出每个分类下事件发生的概率,才能得出该事件发生的总概率. 2.数学期望: 简单地说,随机变量X的数学期望EX就是所有可能值按照概率加权的和. 比如一个随机变量有1/2的概率为1,