分类讨论
$1.$不进行翻倍操作
我们可以发现$[\lceil\frac{a[i]}{2}\rceil,a[i])$这个区间的数不会翻倍,其他部分随便选,假设有$x$个。
所以$ans=\displaystyle\binom{n-x-1}{k}$
$2.$进行翻倍操作
我们可以发现$[a[i],2a[i])$不翻倍,其余随便搞,假设有$x$个。
所以$ans=\displaystyle\binom{n-x}{k-x}$
注意$a[i]=0$时要特判一下。
代码
1 |
|
分类讨论
$1.$不进行翻倍操作
我们可以发现$[\lceil\frac{a[i]}{2}\rceil,a[i])$这个区间的数不会翻倍,其他部分随便选,假设有$x$个。
所以$ans=\displaystyle\binom{n-x-1}{k}$
$2.$进行翻倍操作
我们可以发现$[a[i],2a[i])$不翻倍,其余随便搞,假设有$x$个。
所以$ans=\displaystyle\binom{n-x}{k-x}$
注意$a[i]=0$时要特判一下。
代码
1 | #include <bits/stdc++.h> |