10
来源:互联网 发布:js 字符串 slice方法 编辑:程序博客网 时间:2024/04/27 20:39
#include <iostream>
#include <string.h>
#include <stdio.h>
#include<cmath>
#define eps 1e-8
using namespace std;
double p[110][110];
double sum;
int n;
void init(){
p[2][1]=2.0/3.0;p[2][2]=1.0/3.0;
double pj;
for(int i=3;i<=101;i++)
{
pj=0;
for(int j=1;j<i;j++){
p[i][j]=pow(1.0/3.0,i-1)*i;
pj+=p[i][j];
}
p[i][i]=1-pj;
}
}
int jj=1;
double dfs(int nn,int k,int t,double pm){
if(k==1)return p[nn][1]*t;
if(pm<eps)return 1.0;
else{
double now;
double mysum=0;
for(int i=1;i<=k;i++)
{
now=pm;
now*=dfs(k,i,t+1,pm*p[k][i]);
mysum+=now;
}
// cout<<jj++<<"[][]"<<mysum<<endl;
return mysum;
}
}
int main()
{
init();
// for(int k2=1;k2<=7;k2++)
// cout<<p[7][k2]<<endl;
// cout<<"hehe"<<p[4][1]<<p[4][2]<<p[4][3]<<endl;
while(~scanf("%d",&n)){
sum=0;
for(int k=1;k<=n;k++)
{
double hj=dfs(n,k,1,p[n][k]);
// cout<<hj<<endl;
sum+=hj;
}
printf("%lf\n",sum);
}
return 0;
}
#include <string.h>
#include <stdio.h>
#include<cmath>
#define eps 1e-8
using namespace std;
double p[110][110];
double sum;
int n;
void init(){
p[2][1]=2.0/3.0;p[2][2]=1.0/3.0;
double pj;
for(int i=3;i<=101;i++)
{
pj=0;
for(int j=1;j<i;j++){
p[i][j]=pow(1.0/3.0,i-1)*i;
pj+=p[i][j];
}
p[i][i]=1-pj;
}
}
int jj=1;
double dfs(int nn,int k,int t,double pm){
if(k==1)return p[nn][1]*t;
if(pm<eps)return 1.0;
else{
double now;
double mysum=0;
for(int i=1;i<=k;i++)
{
now=pm;
now*=dfs(k,i,t+1,pm*p[k][i]);
mysum+=now;
}
// cout<<jj++<<"[][]"<<mysum<<endl;
return mysum;
}
}
int main()
{
init();
// for(int k2=1;k2<=7;k2++)
// cout<<p[7][k2]<<endl;
// cout<<"hehe"<<p[4][1]<<p[4][2]<<p[4][3]<<endl;
while(~scanf("%d",&n)){
sum=0;
for(int k=1;k<=n;k++)
{
double hj=dfs(n,k,1,p[n][k]);
// cout<<hj<<endl;
sum+=hj;
}
printf("%lf\n",sum);
}
return 0;
}
0 0
- 10
- 10
- 10
- 10
- 10
- 10
- 10
- 10
- 10%
- 10
- 10
- 10
- 10
- 10
- 10
- 10
- #10
- 10
- 利用httpClient和htmlParse获取网页iframe数据
- java设计模式之代理模式
- js常用方法
- QQ快捷登录需要在 AndroidManifest.xml 注册添加如下信息,sdk中提供开始配置少了回调的配置,报错
- 什么是REST?以及RESTful的实现
- 10
- 自己选择的路,跪着也要走完。(励志)
- Ubuntu12.04嵌入式交叉编译环境arm-linu-gcc搭建过程,图解
- SCI论文翻身的发表技巧
- git autocrlf
- x264_macroblock_analyse(x264_t *h ) 分析
- raid卡和hba卡分别是什么?用来干什么的?
- 【phpwind9.0】浅析phpwind9.0之登陆机制
- In App Purchases(IAP 应用程序內购买): 完全攻略