简单做网站的价格,淘宝怎么优化关键词排名,网站开发汇报ppt模板,阿里邮箱登录Take Your Seat Gym - 102222D
题意#xff1a;
第一次是n个人坐飞机#xff0c;按照1到n的顺序登机#xff0c;第一个人登机牌丢了#xff0c;他随机做一个座位#xff0c;2到n个人上来按照自己的登机牌坐座位#xff0c;如果他的座位被坐了#xff0c;就在随机找一个…Take Your Seat Gym - 102222D
题意
第一次是n个人坐飞机按照1到n的顺序登机第一个人登机牌丢了他随机做一个座位2到n个人上来按照自己的登机牌坐座位如果他的座位被坐了就在随机找一个座位否则就做自己的座位问第n个人坐对的概率是多少 第二次跟第一次的区别是不是从1-n按顺序上车了而是随机找人上车1号还是丢了登机牌问问第n个人坐对的概率是多少
题解
概率题最容易把自己算懵 第一问 如果n 1概率是1肯定能坐对 如果n 2有两个选择第一个人选对最后一个人就只能做错反之所以概率为1/2 如果n 3 1.第一个人选对了位置后面就都坐对了概率为1/3 2.第一个人选了第2个位置第二个人上来就会随机选择只有两个位置可以选1/2所以最后一个人坐对的概率是1/3 * 1/2 3.如果第一个人选了第三个位置则最后一个人一定坐不上对的位置因为上来就被占了。概率为0 总概率为 1/3 1/3 * 1/201/2 … 总结归纳P(n)1/n 1/n * P(n-1) 1/n * P(n-2)…1/n * P(2) 0 1/2 所以总结n 1时p1其他p1/2 第二问 (m为总人数) 如果一号是最后一个上车的那么第n个人一定坐对否则如果是第i个上车的那么前n-i个人肯定会坐在自己的位置上问题又回到了1号身上他又相当于第一个上车的所以只要1号不是最后一个上车的概率总是1/2所以是 1/m(m-1)/m * 1/2 (m1)/(2m)
代码
#include iostream
#include cstdio
using namespace std;int main()
{int t,n,m,cas1;cin t;while(t--){double ans0.5;cin n m;if(n1) ans1;printf(Case #%d: %.6f %.6f\n,cas,ans,1.0*(m1)/(2*m));}return 0;
}