Scout YYF I

题目链接:

http://poj.org/problem?id=3744

题意:

有个人要到一个叫“mine road”的地方,路线是一条直线,起点在1,路上有N个地雷,坐标在[1, 100000000]之间,这人每次有p(0.25≤p≤0.75)的概率向前走一步,且有1-p的概率向前走两步,问这货安全通过雷区到达"mine road"的概率

题解:

利用特征方程求出通项表达式,要走过有雷的地方f(n+1)=f(n-1)*(1-p).   PS:也可以用矩阵快速幂做

                关于特征方程

代码

/*代码略丑 勿喷*/
#include<stdio.h>
#include<math.h>
#include<algorithm>
using namespace std;
const int N=15;
double pow3(double a,long long b)
{if(b==0)return 0;double r=1,base=a;while(b!=0){if(b&1)r*=base;base*=base;b>>=1;}return r;
}
long long a[N],now;
int main()
{int n;double res,a1,a2,r1,r2,c1,c2,p;while(~scanf("%d%lf",&n,&p)){r1=p/2.0-sqrt(1.0-p+p*p/4);r2=p/2.0+sqrt(1.0-p+p*p/4);for(int i=0;i<n;++i)scanf("%lld",&a[i]);sort(a,a+n);now=1,res=1.0;for(int i=0;i<n;++i){a1=res,a2=res*p;c2=(a1*r1-a2)/(r1*r2-r2*r2);c1=(a1-c2*r2)/r1;res=(c1*pow3(r1,a[i]-now)+c2*pow3(r2,a[i]-now));res*=(1-p);now=a[i]+1;}printf("%.7f\n",res);}
}

  

转载于:https://www.cnblogs.com/kiuhghcsc/p/5550659.html

POJ 3744:Scout YYF I 概率DP+特征方程+快速幂相关推荐

  1. POJ 3744 Scout YYF I 期望dp

    给出n≤10n\leq10n≤10个地雷,它们的位置在[1,1e8][1,1e8][1,1e8]之间.然后一个人从111出发,有PPP的概率走一步,有1−P1-P1−P的概率走两步.求问安全离开的雷区 ...

  2. POJ 3744(Scout YYF I )

    题意: 从1开始每次有p的概率往前跳一步,1-p的概率跳两步.给定n个点以及它们的坐标,若跳到这些点上则算失败,求安全经过这些点的概率. 分析:容易推出 dp[i] = dp[i-1]*p +  dp ...

  3. POJ 2778 DNA Sequence (自动机DP+矩阵快速幂)

    题意:给出m个致病DNA片段,求长为n且不含致病片段的DNA序列共有多少种. 数据范围:0 <= m <= 10,1 <= n <=2000000000 这题初看起来与上一题差 ...

  4. 第九届河南省赛 宣传墙 //状压dp+矩阵快速幂+dfs

    http://nyoj.top/problem/1273 状压dp+矩阵快速幂+dfs 1273-宣传墙 内存限制:64MB 时间限制:1000ms 特判: No 通过数:19 提交数:64 难度:4 ...

  5. Codeforces 621E Wet Shark and Block【dp + 矩阵快速幂】

    题意: 有b个blocks,每个blocks都有n个相同的0~9的数字,如果从第一个block选1,从第二个block选2,那么就构成12,问对于给定的n,b有多少种构成方案使最后模x的余数为k. 分 ...

  6. 【BZOJ】4861: [Beijing2017]魔法咒语 AC自动机+DP+矩阵快速幂

    [题意]给定n个原串和m个禁忌串,要求用原串集合能拼出的不含禁忌串且长度为L的串的数量.(60%)n,m<=50,L<=100.(40%)原串长度为1或2,L<=10^18. [算法 ...

  7. CCPC-Wannafly Comet OJ 夏季欢乐赛(2019)E.飞行棋(期望dp+矩阵快速幂)

    题目 飞行棋的规则如下: 1.每名玩家有一个棋子,每个回合可以掷一次骰子. 2.如果使用的骰子为 k面,则这 k面上的点数分别为 1,2,3,-,k,且掷得每种点数的概率均为​. 3.如果当前回合掷得 ...

  8. HDU5863 cjj's string game(DP + 矩阵快速幂)

    题目 Source http://acm.split.hdu.edu.cn/showproblem.php?pid=5863 Description cjj has k kinds of charac ...

  9. BZOJ 4000: [TJOI2015]棋盘( 状压dp + 矩阵快速幂 )

    状压dp, 然后转移都是一样的, 矩阵乘法+快速幂就行啦. O(logN*2^(3m)) ------------------------------------------------------- ...

最新文章

  1. android 之 ListView 里面嵌套 GridView 遇到的问题及其解决方法。
  2. Acwing第 42 场周赛【完结】
  3. python中列表 元组 字典 集合的区别
  4. mysql按升序创建索引_Mysql中的降序索引底层实现
  5. HDU2106 decimal system
  6. echarts 地图实现轮播(二)
  7. Software License Manager
  8. C# DatatTable某一列是否有重复判断
  9. [html] iOS下页面如何启动加载时显示画面图片?如何设置大小?它有什么好处?
  10. 2018最佳GAN论文回顾(上)
  11. JSTL与JAVA数据交互 pagecontext
  12. 计算机驱动空间的c盘不足怎么办,c盘空间不足
  13. 在CentOS5上用 rvm 部署Rails3应用
  14. 电脑电池,正确给笔记本电脑电池校正的技巧攻略
  15. 云服务器无法访问解决办法
  16. python中函数返回值为func 和func() 的区别
  17. JAVA初学者必备的基础书籍
  18. Flutter 解决App登录页面软键盘遮挡住登录按钮或顶起底部控件的问题
  19. 咸鱼带你学计算机网络—概论
  20. mysql闪_为什么mysql一闪而过的原因

热门文章

  1. 加密Spring加载的Properties文件
  2. proxychains-ng 工作原理分析
  3. Java正则表达式应用总结
  4. 软件测试 学习之路 Linux基础命令 (一)
  5. 百度实习生前端面试面经
  6. postman如何测试php接口_基于Postman的API自动化测试
  7. 分布式devops_维护分布式团队的DevOps心态的10个技巧
  8. mqa插件_为什么专有的MQA音乐编码系统比DRM更好,但仍然不好
  9. 开源无人机_开源无人机,欧洲开源等等
  10. html aside元素