题解:CF1599C Bubble Strike
yinpeichu2021 · · 题解
题目链接
思路
分类讨论。设学过的地图个数为
- 随机抽到了
3 张 A 地图,概率为\dfrac{\dbinom{x}{3}}{\dbinom{n}{3}} ; - 随机抽到了
2 张 A 地图,此时我们可以扔去那一张 B 地图,必定可以,概率为\dfrac{\dbinom{x}{2}\dbinom{n-x}{1}}{\dbinom{n}{3}} ; - 随机抽到了
1 张 A 地图,概率为\dfrac{\dbinom{x}{1}\dbinom{n-x}{2}}{\dbinom{n}{3}}\times\dfrac{1}{2} 。
对 3. 中
首先自己会选择扔去
由于
Code
#include<bits/stdc++.h>
using namespace std;
typedef long double LD;
int C3(int x){return x*(x-1)*(x-2)/6;}
int C2(int x){return x*(x-1)/2;}
int main(){
int n;LD p;
cin>>n>>p;
for(int x=0;x<=n;x++)
if(LD(C3(x)+C2(x)*(n-x)+LD(x*C2(n-x))/2)/C3(n)>=p)
cout<<x,exit(0);
return 0;
}