log2精度问题
当log2精度不足时,可以通过log2l补全精度,实在不行则可使用右移操作
int log2_n(ll x)
{
int k = 0;
if (x >= (1LL << 32)) x >>= 32, k += 32;
if (x >= (1LL << 16)) x >>= 16, k += 16;
if (x >= (1LL << 8)) x >>= 8, k += 8;
if (x >= (1LL << 4)) x >>= 4, k += 4;
if (x >= (1LL << 2)) x >>= 2, k += 2;
if (x >= (1LL << 1)) k += 1;
return k;
}fixed setprecision
要求输出精度问题使用cout时一定要加上fixed<<setprecision(int n),否则会出现123456.78这种问题而导致被卡精度
评论(0)
暂无评论