/*刚才的方法有误,得到的是的是目击者看到蓝车的概率。现已更正。*/
我的方法是暴力统计。
题目中“该目击者可正确辨认车是蓝色的概率是80%,不能正确辩认的概率是20%。”一句,若理解成“目击者有80%概率正确辨认车的颜色”,则:
#include "pch.h" #include "math.h" #include "time.h" #include <iostream> int main() { long CarB = 0, CarG = 0, CarB_t = 0; long count = 1000000; double k1 = 0, k2 = 0, k = 0; bool a = 0; srand((int)time(0)); while (count--) { if (rand() % 20 > 2) {//产生0-19的随机数,并判断 a = 0;//若为3-19,则为绿车 }else { a = 1;//若为0-2,则为蓝车 CarB_t++; } if (rand() % 5 < 1) { 目击者20%概率误判 a =" ~a;" } if (a ="= 0) {" carg++; }else { carb++; k1 =" CarB_t;" k2 =" CarB;" k =" k1 / k2;" printf("green car(likely):%d\n", carg); printf("blue car(likely):%d\n", carb); printf("blue car(truth):%d\n", carb_t); printf("true blue car ratio="%f\n", k);" }< pre></ 1) {></iostream>
运行结果:
大约46.9%难道我又搞错了?
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |