洛谷 2719 搞笑世界杯

洛谷原题链接

这道难度只有普及-的题目却花了我一个多小时才搞出来。但做出来之后就会发现:其实这题确实挺水。。。

解题思路:

首先开二维数组 dp [ i ] [ j ] . 代表已售 i 张 A , j 张 B 时后两人买到的票相同的概率。

很显然,dp [ 1 ] [ 0 ] 与 dp [ 0 ] [ 1 ] 的初始值应该为 1 ,因为当只有一张票被售出时,我们可以默认后两个人买的票类型相同,所以买到票相同的概率位 100% .

然后开始推状态转移方程:dp [ i ] [ j ] = ( dp [ i - 1 ] [ j ] + dp [ i ] [ j - 1 ] ) * 0.5 。

每一个状态 dp [ i ] [ j ] 都是由 dp [ i - 1 ] [ j ] 和 dp [ i ] [ j - 1 ] 得到的,因为每次卖票要么会卖 A ,要么会卖 B ,根据加法计数原理加起来就好了,但是由于两种情况是由抛硬币来决定的,所以发生的几率都会 50% 。

于是乎,dp [ i ] [ j ] = ( dp [ i - 1 ] [ j ] + dp [ i ] [ j - 1 ] ) * 0.5 。

代码就简单了,注意开始的初始化:

#include<cstdio>
#include<iostream>
const int M=1500;
int n;
double f[M][M];
int main()
{scanf("%d",&n);n>>=1;for (int i=2;i<=n;i++)f[i][0]=1,f[0][i]=1; for (int i=1;i<=n;i++)for (int k=1;k<=n;k++)f[i][k]=f[i-1][k]*0.5+f[i][k-1]*0.5;printf("%.4lf",f[n][n]);return 0;
}

转载于:https://www.cnblogs.com/yanyiming10243247/p/9305178.html

洛谷 2719 搞笑世界杯相关推荐

  1. 二叉树——淘汰赛(洛谷 P4715)

    题目选自洛谷P4715 二叉树知识点入门题目,便于学习.熟悉二叉树这种数据结构以及解题方法 用value[]和win[]分别来记录能力值和国家编号, 叶子层就是输入的能力值和国家编号, 对二叉树进行d ...

  2. 洛谷-题解 P2672 【推销员】

    独门思路!链表加优先队列! 这题一望,贪心是跑不掉了,但是我贪心并不好,所以想到了一个复杂一些但思路更保稳的做法 思路: 1 因为是离线操作,所以我们可以倒着求,先求x=n的情况,因为那样直接就知道了 ...

  3. 洛谷 P1142 轰炸

    洛谷 P1142 轰炸 题目描述 "我该怎么办?"飞行员klux向你求助. 事实上,klux面对的是一个很简单的问题,但是他实在太菜了. klux要想轰炸某个区域内的一些地方,它们 ...

  4. 洛谷 P1387 最大正方形

    P1387 最大正方形 题目描述 在一个n*m的只包含0和1的矩阵里找出一个不包含0的最大正方形,输出边长. 输入输出格式 输入格式: 输入文件第一行为两个整数n,m(1<=n,m<=10 ...

  5. 洛谷P2763 试题库问题

    题目:https://www.luogu.org/problemnew/show/P2763 题目描述 «问题描述: 假设一个试题库中有n道试题.每道试题都标明了所属类别.同一道题可能有多个类别属性. ...

  6. 动态规划——洛谷_P1057传球游戏

    题目: 题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏.游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球, ...

  7. 洛谷P1417 烹调方案

    洛谷P1417 烹调方案 如果是一般的01背包的话 选的先后是没关系的 但是这题选的先后是有关系的,因为他的价值是随着时间而变化的, 而你的01背包是做不到先选2再选1的 那么我们就跟国王游戏一样 用 ...

  8. 记忆优化搜索(简单题)(洛谷P3183 [HAOI2016]食物链 )( P5635 【CSGRound1】天下第一 )

    昨天做了蓝桥杯的时候,发现自己对于记忆优化搜索甚是不熟悉,所以今天随便找了几个基础题做做,顺便写下两片题解,顺便用了一下devc++敲的代码,发现没有代码补全真的可以说是灰常难受了... 洛谷P318 ...

  9. 洛谷 - 试炼场(全部题目备份)

    整理的算法模板合集: ACM模板 目录 1.新手村 1 - 1 洛谷的第一个任务 1 - 2 顺序与分支 1 - 3 循环!循环!循环! 1 - 4 数组 1 - 5 简单字符串 1 - 6 过程函数 ...

最新文章

  1. POJ1386 Play on Words
  2. 「高并发秒杀」java课程设计报告模板
  3. mybatis count返回null_Mybatis属性示例-Properties的三种配置方式
  4. 《python透明人士,他是凭什么成为主流编程的宠儿?!》Python基础简介及入门配置
  5. angularjs揭秘
  6. RK3288 制作内核开机logo
  7. 了解SQL Server中的倾斜数据
  8. C#: switch语句的重构『网摘』
  9. 超声波皮肤注入器行业研究及十四五规划分析报告
  10. Linux中tar的参数zxf,tar命令
  11. 安排座位 java_座位安排(seat)
  12. C# Winform鼠标样式设置方法
  13. 计算机快捷键里面不显示桌面,桌面显示,显示桌面快捷键不见了
  14. Python学习记录——英文名修改成标准格式
  15. stata两种方法制作限制立方条图
  16. 区块链+数字经济,我们看到了什么
  17. Method breakpoint reached日志问题
  18. PMP备考错题集-作业习题二
  19. Social Recommendation with Implicit Social Influence
  20. java毕业设计家庭理财记账系统mybatis+源码+调试部署+系统+数据库+lw

热门文章

  1. appium + python 搭建
  2. sudo su 和 sudo -s区别
  3. vim编辑器初级(七)
  4. 通过NAT转发实现私网对外发布信息
  5. Oracl数据库中大数据的备份-1
  6. 华为南太无线解决方案部梁旭阳_华为无线充电新专利:激光无线充电,替代传统半接触式...
  7. 快速获取csv数量_【数量技术宅|数据爬虫系列分享】如何获取免费的数字货币历史数据...
  8. MATLAB安装第三方工具箱
  9. 帝国 loginjs.php,帝国cms 6.6 后台拿shell
  10. bom实现方块移动_从0开始实现一个俄罗斯方块