题目大意

$n$ + $m$ 个问题,其中$n$ 个答案是$YES$,$m$个是$NO$的,你依次答题,每答一道,就可以立刻知道这道题的答案,求在最优策略下答错次数的期望,对$998244353$取模.

分析

很显然,如果当前有$i$个答案是$YES$,$j$个答案是$NO$,如果$i!=j$那么我们肯定选择剩余答案多的那个回答,如果$i=j$,我们只能随便猜一个回答.

容易发现,我们猜测$n+m$次答案的过程,可以抽象成在平面上从$(n,m)$走到$(0,0)$的过程,我们假定$YES$为向左,$NO$为向下.

当我们不经过$y=x$这条直线时,$i$和$j$的大小关系是不会改变的,因此我们只会一直向一个方向走.

因此,假设我从$(n,m) (n!=m)$第一次经过$y=x$是在点$(v,v)$,那么因为我只会向一个方向走,所以一定是答对了$max(n, m)-v$道问题.

考虑$n=m$的情况,显然,只要任意走一步,它就变成了刚才的$n!=m$的情况,走到下一个$y=x$的地方,假设是$(u,u)$,

也一定答对了$n - u$道题.

因此,如果不考虑在对角线处选择的答案的正误,从$(n,m)$走到$(0,0)$的期望步数就是$max(n,m)$的.

现在我们来考虑对角线的情况,在对角线上有$1/2$的概率产生$1$的贡献

我们只要暴力枚举通过对角线上每一个点的概率即可.

AGC019F的更多相关文章

  1. 【agc019F】Yes or No

    Portal -->agc019F Description 给你\(n+m\)个询问,其中\(n\)个的答案是\(Yes\),\(m\)个的答案是\(No\),现在依次回答这些询问,每回答一个询 ...

  2. 【agc019f】AtCoder Grand Contest 019 F - Yes or No

    题意 有n个问题答案为YES,m个问题答案为NO. 你只知道剩下的问题的答案分布情况. 问回答完N+M个问题,最优策略下的期望正确数. 解法 首先确定最优策略, 对于\(n<m\)的情况,肯定回 ...

随机推荐

  1. Lambda表达式——注重过程的编程思想

    一.使用匿名内部类的匿名对象创建线程和Lambda表达式写法 Lambda表达式写法不用去定义一个Runable接口的实现类: 二.方法入参是一个接口或者接口的实现类 三.对某个类的一些对象实例进行排 ...

  2. vue页面跳转以及传参和取参

    vue中this.$router.push()路由传值和获取的两种常见方法 1.路由传值   this.$router.push() (1) 想要导航到不同的URL,使用router.push()方法 ...

  3. 线程调用BeginInvoke

    线程异步调用 Thread objThread = new Thread(new ThreadStart(delegate             {                 Dispatch ...

  4. 运行FreeSWITCH的命令行参数

    一般来说,FreeSWITCH 不需要任何命令行参数就可以启动,但在某些情况下,你需要以一些特殊的参数启动.在此,仅作简单介绍.如果你知道是什么意思,那么你就可以使用,如果不知道,多半你用不到. 使用 ...

  5. Collections集合工具类和可变参数

    Collections常用的API: public static <T> boolean addAll(Collection<? super T> c, T... elemen ...

  6. 使用SQL SERVER存储过程实现历史数据迁移

    今天讲下软件开发中最常见的历史数据迁移方式.在讲迁移之前,先简单介绍下几个基本概念. 1.什么是历史数据迁移? 简单直白地说:就是将一些创建时间比较久而且不常用的历史数据,存储到另一个地方(可以是另一 ...

  7. 洛谷P1309——瑞士轮(归并排序)

    https://www.luogu.org/problem/show?pid=1309#sub 题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点 ...

  8. 网页兼容最新IE声明meta方法

    第三种,总是使用最新版本文档模式. 以下是例子: <meta http-equiv="X-UA-Compatible" content="IE=edge" ...

  9. Shell系列(8)- 变量与变量分类(1)

    变量命名规则 开头为字符或下划线,名字中间中能有字母.数字和下划线组成; 变量的长度不超过255个字符; 变量名在有效的范围内必须是唯一的; 如再次定义则会替换上一个变量的值 在Bash中,变量的默认 ...

  10. docker挂载目录问题:touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied

    docker 运行后, 执行docker logs -f myjenkins时报错:touch: cannot touch '/var/jenkins_home/copy_reference_file ...