BZOJ2134 单选错位

BZOJ 2134 单选错位(数学期望)【BZOJ 修复工程】 【BZOJ修复计划 #4】BZOJ 2134 单选错位 【国家集训队作业】 阅读详情

原题链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2134

单选错位

Description

Input

n很大,为了避免读入耗时太多,输入文件只有5个整数参数n, A, B, C, a1,由上交的程序产生数列a。
下面给出pascal/C/C++的读入语句和产生序列的语句(默认从标准输入读入):
// for pascal

readln(n,A,B,C,q[1]); 
for i:=2 to n do q[i] := (int64(q[i-1]) * A + B) mod 100000001; 
for i:=1 to n do q[i] := q[i] mod C + 1; 

// for C/C++

scanf("%d%d%d%d%d",&n,&A,&B,&C,a+1); 
for (int i=2;i<=n;i++) a[i] = ((long long)a[i-1] * A + B) % 100000001; 
for (int i=1;i<=n;i++) a[i] = a[i] % C + 1; 

选手可以通过以上的程序语句得到n和数列a(a的元素类型是32位整数),
n和a的含义见题目描述。
2≤n≤10000000, 0≤A,B,C,a1≤100000000

Output

输出一个实数,表示gx期望做对的题目个数,保留三位小数。

Sample Input

3 2 0 4 1

Sample Output

1.167

【样例说明】

a[] = {2,3,1}

正确答案 gx的答案 做对题目 出现概率

{1,1,1} {1,1,1} 3 1/6

{1,2,1} {1,1,2} 1 1/6

{1,3,1} {1,1,3} 1 1/6

{2,1,1} {1,2,1} 1 1/6

{2,2,1} {1,2,2} 1 1/6

{2,3,1} {1,2,3} 0 1/6

共有6种情况,每种情况出现的概率是1/6,gx期望做对(3+1+1+1+1+0)/6 = 7/6题。(相比之下,lc随机就能期望做对11/6题)

题解

居然还有让选手自己生成数据的**题

显然,每道题选对的概率=它与下一道题答案相同的概率,考虑其中选项较少的那一题A,设其选项数为a,较多的那一题B选项数为b:

对于A题的每个选项,成为正确答案的概率为 1a 1 a ,对于这个答案,它在B题中成为正确答案的概率为 1b 1 b 。那么,每个选项同时成为两道题正确答案的概率为 1ab 1 a b 。因此,对于整道A题,它与B题答案相同的概率等于A题所有选项同时成为两题正确答案的概率之和= a×1ab=1b a × 1 a b = 1 b 。所以我们可得状态转移方程如下:

dp[i]=(double)1/max(a[i],a[i+1]) d p [ i ] = ( d o u b l e ) 1 / m a x ( a [ i ] , a [ i + 1 ] )
 
然后把所有概率加起来就好了,这是一道dp???

代码
#include<bits/stdc++.h>
using namespace std;
const int M=1e7;
int n,A,B,C,a[M];
void in()
{
    scanf("%d%d%d%d%d",&n,&A,&B,&C,a+1); 
    for (int i=2;i<=n;i++)a[i]=((long long)a[i-1]*A+B)%100000001; 
    for (int i=1;i<=n;i++)a[i]=a[i]%C+1; 
}
void ac()
{
    a[n+1]=a[1];
    double ans=0;
    for(int i=1;i<=n;++i)
    ans+=(double)1/max(a[i],a[i+1]);
    printf("%.3lf",ans);
}
int main()
{
    in();ac();
    return 0;
}
解锁微信小程序Camera组件的隐藏技能:连续扫码背后的逻辑与陷阱 本文深入解析微信小程序Camera组件在连续扫码功能中的技术原理与优化方案,涵盖识别率提升、内存管理策略及典型问题排查。通过实战参数对比和代码示例,帮助开发者解决扫码枪应用中的性能损耗与界面卡顿问题,提升零售、物流等场景的工作效率。 阅读详情

相关推荐

《iOS之一起进大厂》系列-秒杀面试官的RunLoop底层原理面试题

Runloop是iOS面试中的必考题,不管大厂小厂都会问到。 这里包括了Runloop几乎所有的面试题,还有中肯完整的答案解释。

空杯子 1153

BZOJ_2134_单选错位——期望DP

BZOJ_2134_单选错位——期望DP 题意: 分析:设A为Ai ∈ [1,ai+1] 的概率,B为Ai = A(imodn+1)的概率显然P(A|B) = 1,那么根据贝叶斯定理P(B) = P(B|A)*P(A)P(A) = min(ai,ai+1)/aiP(B|A) = 1/a(i+1)P(B) = min(ai,ai+1)/(ai*a(i+1))又因为期望的可加性,直接...

167

Windows电脑如何用MobaXterm连接宇树G1机器人?保姆级SSH配置指南

本文提供了一份详细的保姆级教程,指导Windows用户使用MobaXterm通过SSH连接宇树G1机器人。内容涵盖从物理网络配置、MobaXterm安装与SSH会话创建,到文件传输、X11转发等高级功能,并包含常见问题排查与安全加固建议,帮助开发者快速建立稳定可靠的远程开发连接。

purple的博客 878

【BZOJ2134】单选错位 期望

【BZOJ2134】单选错位 Description Input n很大,为了避免读入耗时太多,输入文件只有5个整数参数n, A, B, C, a1,由上交的程序产生数列a。下面给出pascal/C/C++的读入语句和产生序列的语句(默认从标准输入读入): // for pascal readln(n,A,B,C,q[1]); for i:=2 to n do q[i] :=...

weixin_30446613的博客 70

Zemax实战:20×超高清变焦镜头设计全流程解析(从架构到制造)

本文详细解析了使用Zemax软件设计一款20倍变焦比、恒定F2.8光圈8K超高清镜头的全流程。从应对恒定光圈、宽光谱与8K解析力三大挑战的初始架构规划,到构建多重组态模型、分七阶段进行像差优化与公差分析,最终跨越制造鸿沟,为广播级影视与高精度工业检测应用提供了实战指南。

sun99的博客 552

医学影像弹性形变处理

这段代码的主要流程是:读取 DICOM 医学影像,尝试使用 MONAI 进行弹性形变(根据版本适配),如果失败则使用 OpenCV 实现,最后可视化并保存处理结果。这样可以在不同环境下灵活处理医学影像的弹性形变需求。后面会写一篇解释弹性变形方法的短文。

wh_xia_jun的专栏 780

bzoj2134单选错位

bzoj2134单选错位 题意: 试卷上n道选择题,每道分别有ai个选项。某人全做对了,但第i道题的答案写在了第i+1道题的位置,第n道题答案写在第1题的位置。求期望能对几道。n≤10000000 题解: 水题,然而我不会。第i题与第i+1题答案一样的概率是1/max(aiai+1) 代码: 1 #include <cstdio> 2 #include <a...

weixin_34346099的博客 77

多模态模型评测神器 | OpenCompass MMBench 了解一下!

MMBench 是 OpenCompass 研究团队自建的视觉语言模型评测数据集,可实现从感知到认知能力逐级细分评估。研究团队从互联网公开信息与权威基准数据集采集约 3000 道单项选择题 ,覆盖目标检测、文字识别、动作识别、图像理解、关系推理等 20 个细粒度评估维度。

OpenCompass的博客 7826

bzoj2134 单选错位

http://www.elijahqi.win/archives/3624 题目描述 gx和lc去参加noip初赛,其中有一种题型叫单项选择题,顾名思义,只有一个选项是正确答案。试卷上共有n道单选题,第i道单选题有ai个选项,这ai个选项编号是1,2,3,…,ai,每个选项成为正确答案的概率都是相等的。lc采取的策略是每道题目随机写上1-ai的某个数作为答案选项,他用不了多少时间就能期望做对 ...

Elijahqi 311

第 3 天:Actor 是什么?创建你的第一个游戏对象!

本文详细介绍 Actor 在 Unreal Engine 5 中的作用,并通过 C++ 创建你的第一个游戏对象。你将学习 Actor 的生命周期(BeginPlay、Tick)、如何添加组件(Static Mesh),并让 Actor 在游戏世界中运作。同时提供 常见问题解决方案,助你快速上手 UE5 C++ 开发!🎮 跟随本教程,构建属于你的第一个游戏对象!

m0_37643873的博客 2631

基于Simulink实现电动汽车电机驱动系统的建模与仿真

通过上述步骤,我们成功实现了基于Simulink的电动汽车电机驱动系统的建模与仿真。该系统能够全面评估电机驱动系统的性能,验证控制策略的有效性,并通过优化设计提高车辆的动力性和效率。引入智能预测:结合人工智能技术,实现更智能的控制策略。扩展功能:增加对多种电机类型的支持,提升系统通用性。实验验证:将仿真模型应用于实际硬件,进行实验验证,评估其在实际工况下的表现。

xiaoheshang_123的博客 318

[BZOJ 2134]单选错位

Description 题库链接 共有 \(n\) 道单选题,第 \(i\) 道单选题有 \(a_i\) 个选项,这 \(a_i\) 个选项编号是 \(1,2,3,…,a_i\),每个选项成为正确答案的概率都是相等的。你把答案抄到答题纸上,没想到抄错位了:第 \(i\) 道题目的答案抄到了答题纸上的第 \(i+1\) 道题目的位置上,特别地,第 \(n\) 道题目的答案抄到了第 \(1\...

weixin_30512785的博客 103

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

【bzoj2134】单选错位

题目描述 有n道题,第i道题有ai个选项。把第i道题的正确答案填到第i+1道题上(n填到1),问期望做对几道题。 输入 n很大,为了避免读入耗时太多, 输入文件只有5个整数参数n, A, B, C, a1, 由上交的程序产生数列a。 下面给出C++的读入语句和产生序列的语句(默认从标准输入读入): scanf("%d%d%d%d%d",&n,&A,&a...

anweiyun4308的博客 169

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

bzoj2134 单选错位 递推

由于一题只会对下一题产生影响且相互独立,可以考虑求出一道有a个选项的题写到有b个选项的题时的期望得分。        如果a>b,那么有b/a的概率选项在1...b之间,这是又有1/b的概率正确,因此期望为1/a;否则可以类似得到期望为1/b。因此期望就是1/max(a,b)。        然后就是10行题了23333。(不算头文件) AC代码如下: #include #include

lych的博客 1045

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

bzoj2134: 单选错位

期望、递推

ACoder 545

马德拉酒全解析:从加烈工艺到氧化陈年的不死之酒

在葡萄酒世界里,氧化通常被视为缺陷,但有一类加强型葡萄酒却将加热与氧化变成法定工艺,它就是来自大西洋岛屿的马德拉酒。理解它的核心,在于认识加烈时机如何决定甜与干,以及Estufagem、Canteiro等热化方式如何塑造坚果、焦糖与高酸并存的复杂风味。这种“不死之酒”开瓶后依然能稳定存放数月,既是品鉴训练的绝佳样本,也是厨房酱汁与中餐配餐的隐藏高手。从酒标上的年份含义到五大风格入门路线,本文以项目研究的方式梳理产地、工艺、品鉴与选购,帮你建立一套完整的加强酒知识框架,下次面对酒单上的“Madeira”时不再

weixin_33857230的博客 482

bzoj 2134: 单选错位

日常扔扔扔:https://www.lydsy.com/JudgeOnline/problem.php?id=2134 首先这题的lc是没有什么用的,主要是反映了出题人的思想:考试做选择题乱选得到的分数都很高(相对填错来讲) 先简单说一下题意:给出一个序列每个元素的取值,询问每个元素和上一个元素相同的期望的和 很明显式子就是这样的 我们假设: 为第 道题做对的期望 因为期望的和等...

lahlah的博客 418

BZOJ——2134: 单选错位

http://www.lydsy.com/JudgeOnline/problem.php?id=2134 Time Limit:10 SecMemory Limit:259 MBSubmit:1013Solved:782[Submit][Status][Discuss] Description Input n很大,为了避免读入耗时太多,输入文件...

agcozdwdfvds08078的博客 146
上一篇: Code[VS]2549 自然数和分解
下一篇: BZOJ3450 Easy
ShadyPi
博客等级 码龄9年 1万+粉丝 637原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ShadyPi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值