https://www.nowcoder.com/acm/contest/207/C
题意:给你一段L的长度,每次等概论在上面取一个点然后分成两半,每次去掉左半,问多少次可以比D小的期望
由题意推测L/d相同结果必然相同
从2到4到8,0.693147变成2倍,三倍,推测是log级数,且是以e为底
那么就当L>d的时候公式就是 ln(L/d)+1
#include<bits/stdc++.h> using namespace std; int main() { int t; scanf("%d",&t); while(t--) { double l,d; scanf("%lf %lf",&l,&d); if(l<=d) { printf("0.000000 "); continue; } printf("%.6lf ",log(l)-log(d)+1); } return 0; }