UVA_10056
这个题目公式还是比较好推的,至于精度的问题,对于只需要保证大概6位有效数字的除法来讲,double就可以了,只要不超过double的范围就好了。
#include#include #include int N, I; double P; void solve() { scanf("%d%lf%d", &N, &P, &I); if(fabs(P) < 1e-9) printf("0.0000\n"); else printf("%.4lf\n", P * pow(1 - P, I - 1) / (1 - pow(1 - P, N))); } int main() { int tt, t; scanf("%d", &t); while(t --) { solve(); } return 0; }