zoj2271 Chance to Encounter a Girl(DP)

/*
 概率计算:按时间为阶段,每个点由上一阶段周围的四个点来维护。
 注意事项:1.时间O(N^3*T),在问题的边缘时间,所以打表计算。
         2.关于概率的求解,如果遇到就结束了,所以向后走就说明
          之前没有碰到,所以不用前面的碰到的概率计算后面的值。
*/

ContractedBlock.gifExpandedBlockStart.gifView Code
 1 #include <stdio.h>
2 #include <string.h>
3
4 double answ[ 51 ] = {
5 0.0000,0.6667,0.0000,0.4074,0.0000,
6 0.3361,0.0000,0.2928,0.0000,0.2629,
7 0.0000,0.2407,0.0000,0.2233,0.0000,
8 0.2092,0.0000,0.1975,0.0000,0.1875,
9 0.0000,0.1789,0.0000,0.1714,0.0000,
10 0.1648,0.0000,0.1589,0.0000,0.1536,
11 0.0000,0.1487,0.0000,0.1443,0.0000,
12 0.1403,0.0000,0.1366,0.0000,0.1332,
13 0.0000,0.1300,0.0000,0.1270,0.0000,
14 0.1243,0.0000,0.1217,0.0000,0.1192};
15
16 /*
17
18 double maps[ 100 ][ 100 ][ 100 ];
19 short dxdy[ 4 ][ 2 ] = {1,0,0,1,-1,0,0,-1};
20
21 void madelist() // 打表程序
22 {
23 for ( int n = 1 ; n < 100 ; n += 2 ) {
24 double sum = 0.0;
25 memset( maps, 0, sizeof( maps ) );
26 maps[ 0 ][ n/2 ][ n/2 ] = 1.0;
27 for ( int t = 0 ; t < n ; ++ t )
28 for ( int i = 0 ; i < n ; ++ i )
29 for ( int j = 0 ; j < n ; ++ j )
30 for ( int k = 0 ; k < 4 ; ++ k ) {
31 int x = i+dxdy[ k ][ 0 ];
32 int y = j+dxdy[ k ][ 1 ];
33 if ( x > 0 && x < n-1 && y > 0 && y < n-1 )
34 maps[ t+1 ][ i ][ j ] += 0.25*maps[ t ][ x ][ y ];
35 else if ( ( x == 0 && y == 0 ) || ( x == 0 && y == n-1 ) ||
36 ( x== n-1 && y == 0 ) || ( x == n-1 && y == n-1 ) )
37 maps[ t+1 ][ i ][ j ] += 0.5*maps[ t ][ x ][ y ];
38 else maps[ t+1 ][ i ][ j ] += 1.0/3*maps[ t ][ x ][ y ];
39 if ( i == n/2 && j == t ) {
40 sum += maps[ t+1 ][ i ][ j ];
41 maps[ t+1 ][ i ][ j ] = 0.0;
42 }
43 }
44 printf("%.4lf,",sum);
45 }
46 }
47 */
48
49 int main()
50 {
51 int m;
52 while ( ~scanf("%d",&m) )
53 printf("%.4lf\n",answ[ m/2 ]);
54 return 0;
55 }

转载于:https://www.cnblogs.com/-xiaobai-/archive/2011/08/18/2144243.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/298120.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

12 个问题搞懂 Redis

都说学习需要带着问题&#xff0c;带着思考进行学习&#xff0c;下面就以问题的形式来学习下 Redis 。1、什么是 Redis &#xff1f;Redis 是一个高性能的 key-value 数据库&#xff1b;作者来自意大利西西里岛的 Salvatore Sanfilippo &#xff1b;Redis 使用 ANSI C 语言编写…

sql企业管理器_Valentina Studio for mac(开源数据库管理器)

Valentina Studio for mac是您使用MySQL&#xff0c;MariaDB&#xff0c;SQL Server&#xff0c;PostgreSQL&#xff0c;SQLite和Valentina DB数据库的通用数据库管理工具。valentina studio mac下载可让您连接所有主要数据库&#xff0c;运行查询并生成图表&#xff0c;以更好…

java程序编六角星_跨平台移动端解决方案—Weex

跨端方案背景一1起因由于客户端Webview内嵌H5的各种受限&#xff0c;例如性能差、JS执行效率低以及伴随着大量的机型兼容问题&#xff0c;于是有了各种混合跨端开发解决方案&#xff1a;Hybrid、React-Native、Weex、Flutter、小程序、快应用等。2优势我们知道各大应用市场对于…

[转]常用Delphi开发资料网址

发现一个很好的个人网站&#xff0c;该网站收集了大量有关Delphi开发资料的网址链接&#xff0c;值得收藏。 相关Delphi链接如下&#xff1a; Books, Tutorials Tomes of Delphi: Algorithms and data structures by Julian M. Bucknall , Source http://www.boyet.com/Code/To…

使用微软WPF技术开发产品优势究竟在那里

2008年在世界经济历史上是一个不平凡的一年&#xff0c;在这一年中&#xff0c;美国的五大投资银行有两家破产。金融危机席卷全球&#xff0c;美国的失业率在过去的一年从4%飙升到了10%&#xff0c;有些城市的失业率甚至高达20%&#xff1b;加拿大的就业数字也是惨不忍睹&#…

父类可以调用子类的方法吗_python类的继承、多继承及查找方法顺序

讲解类的继承&#xff0c;先用无__init__()方法的类讲解&#xff0c;会更容易理解分三部分讲解1、单继承(无__init__()方法)继承方式&#xff1a;子类(父类):方法重写&#xff1a;防止执行父类的方法。不想继承父类的某个方法&#xff0c;就自己重写一个一样名称的方法执行父类…

解决ASP.NET Core部署到IIS,更新项目另一个程序正在使用此文件,进程无法访问...

问题部署到IIS上的ASP.NET Core项目&#xff0c;在更新的时候会进程占用的错误解决思路初步解决方案&#xff1a;1&#xff0c;关闭应用程序池2&#xff0c;关闭网站3&#xff0c;更新项目缺点&#xff1a;网站没法访问&#xff0c;部署项目停的时间过长答案查询官方文档后&…

下面选项能正确表示JAVA_模拟试题2

Java语言程序设计模拟试题二一、选择题&#xff1a;共20小题&#xff0c;每小题1分&#xff0c;满分20分&#xff1a;请将答案填入题后括号中。1&#xff0e;以下的选项中能正确表示Java语言中的一个整型常量的是 ( )A) 12. B) -20 C) 1,000 D) 4 5 62。下列的变量定义中&#…

hdu 1671

Trie树&#xff0c;题目不难&#xff0c;但还是WA了一次&#xff0c;没有考虑后输入的字符串是前输入的字符串的前缀的情况&#xff0c;真是太粗心了。不过做了几道Trie树的题目以后&#xff0c;代码写得还是比较通用了&#xff0c;慢慢再改进吧 /* * hdu1671/win.c * Created …

使用Redis Stream来做消息队列和在Asp.Net Core中的实现

Redis - Wikipedia写在前面我一直以来使用redis的时候&#xff0c;很多低烈度需求(并发要求不是很高)需要用到消息队列的时候&#xff0c;在项目本身已经使用了Redis的情况下都想直接用Redis来做消息队列&#xff0c;而不想引入新的服务&#xff0c;kafka和RabbitMQ等&#xff…

java基础代码下载_Java基础(一)(示例代码)

1. 概述1.1 什么是Java语言Java语言&#xff1a;面向对象的程序设计语言与机器无关的二进制格式的类文件Java虚拟机(用来执行类文件)完整的软件程序包(跨平台的API和库)1.1.1 Java语言特点语法简单&#xff0c;功能强大分布式与安全性与平台无关解释、编译两种运行方式多线程动…

windows挂载ext4_使用 UEFI 双启动 Windows 和 Linux | Linux 中国

这是一份在同一台机器上设置 Linux 和 Windows 双重启动的速成解释&#xff0c;使用统一可扩展固件接口&#xff08;UEFI&#xff09;。来源&#xff1a;https://linux.cn/article-12891-1.html作者&#xff1a;Alan Formy-duval译者&#xff1a;郑&#xff08;本文字数&#x…

Master DNS服务的搭建

很多企业都通过Linux来搭建自己的DNS服务器来提高网路效率&#xff0c;在此我们来学习如何搭建Master DNS服务器。首先&#xff0c;确定是否搭建yum仓库&#xff0c;并有软件包可用&#xff0c;如DVD光盘是否挂载。一、安装DNS服务所需要的软件包DNS所需要的软件包有&#xff1…

oh,我的老伙计,你看看这近五十个dapr视频

oh&#xff0c;我的老伙计&#xff0c;你看看这近五十个 dapr 视频。这不就是你想要的视频资料吗&#xff1f;快来捡走吧&#xff01;开始了&#xff0c;但是没完全开始 Dapr 是一个可移植的、事件驱动的运行时&#xff0c;它使任何开发人员能够轻松构建出弹性的、无状态和有状…

极速理解设计模式系列:2.观察者模式(Observer Pattern)

4个角色&#xff1a;被观察者(Subject/目标对象接口)&#xff0c;具体被观察者(ConcreteSubject/具体目标对象)&#xff0c;观察者(Observer)&#xff0c;具体观察者(ConcreteObserver) 被观察者(Subject/目标对象接口&#xff09;&#xff1a;目标对象的抽象接口 …

java try finally connectoin close_Java SocketChannel類代碼示例

本文整理匯總了Java中io.netty.channel.socket.SocketChannel類的典型用法代碼示例。如果您正苦於以下問題&#xff1a;Java SocketChannel類的具體用法&#xff1f;Java SocketChannel怎麽用&#xff1f;Java SocketChannel使用的例子&#xff1f;那麽恭喜您, 這裏精選的類代碼…

被娱乐在线报道的“唐骏造假门事件”

最近全球最热的是南非的世界杯&#xff0c;而在中国最近比较热的是另外一个事情。。。话说那天晚上回家已经很晚&#xff0c;照例的&#xff0c;家里的毛孩子歪歪斜斜的睡在床的角落里&#xff0c;一边是正在看节目的老婆吃着零食&#xff0c;我随便瞄了一眼&#xff0c;是新闻…

16年微软/腾讯云/华为云MVP是怎样炼成的

自由、创新、研究、探索&#xff0c;很难想象到一个IT大神的博客&#xff0c;会将“自由”放在第一位&#xff0c;也许这二字代表的&#xff0c;既是精神&#xff0c;又是情怀。搞微软技术的&#xff0c;大家或多或少都有听说过微软的“最有价值专家”&#xff08;MVP&#xff…

Dave Python 练习三 -- 对象

#encodingutf-8 #*************Part 1 : 对象 ****************** #Python 对象 #Python 使用对象模型来存储数据。构造任何类型的值都是一个对象。所有的Python 对像都拥有三个特性&#xff1a;身份&#xff0c;类型和值。 #身份&#xff1a; #每一个对象都有一个唯一的身份标…

java 注册驱动失败_java – JDBC驱动程序注册死锁?

在一个线程中,正在创建一个JackRabbit&#xff1a;"docs-on-startup" #32 prio5 os_prio0 tid0x00007f730d73e800 nid0x601d in Object.wait() [0x00007f725bffc000]java.lang.Thread.State: RUNNABLEat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Nat…