求助数学概率题
  • 板块学术版
  • 楼主Zlc晨鑫
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/6/30 07:10
  • 上次更新2024/6/30 11:28:41
查看原帖
求助数学概率题
297555
Zlc晨鑫楼主2024/6/30 07:10

捞

现在的情况是,写一个程序模拟。

#include <bits/stdc++.h>

using namespace std;

long long total = 0;

int dfs(int id) {
	if (id == 1) total ++ ;
    double k = rand() * 1.0 / (RAND_MAX + 1) * 3;
    if (id == 1) {
        if (0 <= k && k <= 1) return 1;
        else if (1 <= k && k <= 2) return 1;
        else return dfs(2);
    }
    else if (id == 2) {
        if (0 <= k && k <= 1) return 2;
        else if (1 <= k && k <= 2) return dfs(1);
        else return dfs(3);
    }
    else {
        if (0 <= k && k <= 1.5) return 3;
        else return dfs(2);
    }
}

int main() {
    srand(time(NULL));
    int n;
    cin >> n;
    int cnt = 0; 
    for (int i = 1; i <= n; i ++ ) 
        cnt += (dfs(1) == 1);
    double pa = cnt * 1.0 / n;
//    cnt = 0;
//    for (int i = 1; i <= n; i ++ ) 
//        cnt += (dfs(1) == 2);
//    double pb = cnt * 1.0 / n;
//    cnt = 0;
//    for (int i = 1; i <= n; i ++ ) 
//        cnt += (dfs(1) == 3);
//    double pc = cnt * 1.0 / n;
//    cout << pa << ' ' << pb << ' ' << pc << ' ' << pa + pb + pc << endl;
	cout << 1.0 * total / n;
    return 0;
}

然后会发现在n很大的时候,这个total/n,接近15/13。

那么这个东西的实际意义究竟是什么呢?

这已经不是一个概率了,应该试验还未结束就可以有贡献,但是不是概率,又怎么解释它和答案的关系呢?

2024/6/30 07:10
加载中...