http://acm.fzu.edu.cn/problem.php?pid=1342

dp[i][j]  , i位尾巴为j的概率

const  int  maxn = 1008 ;
double dp[maxn][12] ; int main(){
int i , j , n , k ;
double t ; while(cin>>k>>n){ for(i = 0 ; i <= k ; i++) dp[1][i] = 100.0 / double(k+1) ; for(i = 2 ; i <= n ; i++){
dp[i][0] = (dp[i-1][0] + dp[i-1][1]) / double(k+1) ;
for(j = 1 ; j < k ; j++)
dp[i][j] = (dp[i-1][j-1] + dp[i-1][j] + dp[i-1][j+1]) / double(k+1) ;
dp[i][k] = (dp[i-1][k-1] + dp[i-1][k]) / double(k+1) ;
} for(t = 0.0 , i = 0 ; i <= k ; i++) t += dp[n][i] ; printf("%.5lf\n" , t) ; }
return 0 ;
}

  

fzu1342的更多相关文章

随机推荐

  1. 矩阵分解ALS方法

    目标函数 优化目标函数 利用坐标下降法,依次更新u和v的值.u和v的先后顺序无所谓,只要保证两者是交替更新的就好.这种方法又称为alternating least squares(ALS). 增加偏置 ...

  2. CvMat结构

    一.创建矩阵的方式: 1.cvCreateMat(int rows,int cols,int type),Type可以使任何预定义类型.Type的写法规则:CV_<bit_depth>(S ...

  3. 请求网络get

    package com.baidu.net; import java.io.IOException; import org.apache.http.HttpEntity;import org.apac ...

  4. Dos学习笔记(3)attrib命令

    今天和昨天一直在摸索这个命令觉得这个命令为什么改变不了文件夹的属性, 因为我试着用attrib +r /s 去修改子文件夹的时候发现没用,然后如果输入 attrib +r /d 又提示说/d需要和/s ...

  5. BLOCK封装带菊花的网络请求

    #import <Foundation/Foundation.h> @class HttpRequestManager; typedef void(^httpRequestBlock) ( ...

  6. 【OPENGL】第三篇 着色器基础(二)

    在这一小节,主要学习GLSL的基本数据类型以及控制结构.GLSL具备了C++和Java的很多特性,我们会先了解所有着色阶段共有的特性,再了解各个着色器的专属特性. 1.着色器的基本结构 一个着色器程序 ...

  7. tiny java web server

    import java.io.*; import java.net.ServerSocket; import java.net.Socket; import java.util.ArrayList; ...

  8. js生成二维码(jquery自带)

    //引入js<script type="text/javascript" src="js/jquery.js"></script> &l ...

  9. 使用 ServiceStack.Text 序列化 json的实现代码【转】

    转自:http://www.jb51.net/article/38338.htm 今天发篇文章总结下自己使用 ServiceStack.Text 来序列化 json.它的速度比 Newtonsoft. ...

  10. spring mvc 参数

    Struts(表示层)+Spring(业务层)+Hibernate(持久层) Struts: Struts是一个表示层框架,主要作用是界面展示,接收请求,分发请求. 在MVC框架中,Struts属于V ...