题意: 有n个门, 正数代表经过时间t 能走出迷宫, 负数代表经过时间t 返回到 原来位置...
思路; (参考大神牛航姐姐博客)
设门的总数是N, 有N1 个门可以走出迷宫, N2 个门会返回原来的位置. T1为总的总出迷宫的时间, T2为总的返回原位的时间
则 P(走出迷宫)= N1 / N , P(返回)= N2 / N,
题目转化为需要多少实验才能取得成功.
随机变量X符合几何分布...
此题目中~
p= N1 / N
期望实验次数: E(X)= N / N1 //本题关键...若打开姿势不对..必挂T^T
每次实验消耗的时间: T= T1+T2/ N
所需时间的数学期望: E(T)=(N / N1)*( ( T1 + T2) / N) =( T1 + T2) / N1;
ps: 期望实验次数推导
(此处用了近似处理)
CODE:
#include<stdio.h> #include<iostream> #include<string.h> using namespace std; int gcd(int a,int b) { return b?gcd(b,a%b):a; } int main() { int n; scanf("%d",&n); for(int i=1;i<=n;i++) { int T1=0,T2=0,N1=0,N2=0; int num; scanf("%d",&num); for(int j=1;j<=num;j++) { int a; scanf("%d",&a); if(a>0) {T1+=a;N1++; } if(a<0) {T2-=a;N2++; } } if(T1==0) printf("Case %d: inf\n",i); else { int c=gcd(T1+T2,N1); printf("Case %d: %d/%d\n",i,T1+T2/c,N1/c); } } return 0; }