/**
对于大数的很好的应用,,缩小放大,,保持精度
**/
#include <iostream>
#include <cmath>
#include <algorithm>
#include <cstdio>
using namespace std; int main()
{
double n,p;
int cnt =;
while(cin>>n>>p){
double p1 = log(p+0.0);
double p2 = log(-p+0.0);
double s1 = (n+)*p1;
double s2 = (n+)*p2;
double ans =,c=;
for(int i=;i<n;i++){
ans += (exp(c+s1)+exp(c+s2))*(n-i);
c += log(n++i+0.0)-log(i++0.0);
s1 += p2;
s2 += p1;
}
printf("Case %d: %.6lf\n",cnt++,ans);
}
return ;
}

最新文章

  1. js模版引擎handlebars.js实用教程——each嵌套
  2. C#-ado.net-属性扩展
  3. c++ map 的基本操作
  4. Java部分总结图片版2(已加上原图链接!!!)
  5. Oracle数据库——体系结构
  6. BZOJ 1014: [JSOI2008]火星人prefix Splay+二分
  7. Zoj 3865 Superbot
  8. SmartFoxServer 2x的pythonclient
  9. Python学习笔记2-flask-sqlalchemy 简单笔记
  10. SEO学习之路
  11. dbutils的使用Demo
  12. C语言身份证信息查询系统(修改版)
  13. 201521123039《Java程序设计》 第六周学习总结
  14. 调用接口http封装
  15. javaweb重定向的两种方式
  16. Python条件判断 if-else for循环 while循环 break continue
  17. flask教程
  18. Python面向对象2-类和构造方法
  19. MySQL InnoDB 引擎的持久性与性能
  20. 并发之volatile关键字

热门文章

  1. iptables 规则预设置为新centos系统
  2. sae上屏蔽错误显示并查看错误日志
  3. java final 关键字醍醐灌顶
  4. ongl 表达式
  5. JavaScript基础(语法类型转换、运算符、语句)
  6. Codeigniter-实现权限认证
  7. 编写一个程序, 将 a.txt 文件中的单词与 b.txt 文件中的 单词交替合并到 c.txt 文件中, a.txt 文件中的单词用回车符 分隔, b.txt 文件中用回车或空格进行分隔。
  8. BZOJ 1058: [ZJOI2007]报表统计( 链表 + set )
  9. [LeetCode]题解(python):005-Longest Palindromic Substring
  10. python自学笔记(四)python基本数据类型之元组、集合、字典