P1297 单选错位 题解
这是一道我们的考试题
前置芝士
期望
定义:试验中每次可能结果的概率乘以其结果的总和(来自百度某科 滑稽)
性质:\(E(ax+by)\) = \(xE(a)\) * \(yE(b)\)
计算式: \(E(x)\) = \(\sum_{i=1}^{\infty}\) \(w_i * p_i\)
题意
gx把第\(i\) 题的答案涂到了 \(i+1\) 上 让我们求出gx 答对的期望
分析
每个题的选项不同,考虑分情况讨论。
- 当两个题的选项数相同时,gx答对的概率为\({1} \over {a_i}\)
- 当前一道题的选项数大于后一道题时,gx答对的概率为 \({a_i+1} \over {a_i * a_i+1}\) = \({1} \over {a_i}\)
- 当后一道题的选项数大于前一道题时,gx答对的概率为 \({a_i} \over {a_i * a_i+1}\) = \({1} \over {a_i+1}\)
综上这道题的总柿子为 \({min(a_i , a_i+1)} \over {a_i * a_i+1}\) = \({1} \over {max(a_i,a_i+1)}\)
代码
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
int n,A,B,p;
int a[20000010];
double ans;
int main()
{
scanf("%d%d%d%d%d", &n, &A, &B, &p, 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] % p + 1;
a[n+1] = a[1];
for(int i = 1; i <= n; i++) ans += 1 / (double) max(a[i],a[i+1]);
printf("%.3lf",ans);
return 0;
}
P1297 单选错位 题解的更多相关文章
- 洛谷P1297 单选错位——期望
题目:https://www.luogu.org/problemnew/show/P1297 读懂题后就变得很简单啦: 对于一个问题和它的下一个问题,我们考虑: 设上一个问题有 a 个选项,下一个问题 ...
- P1297 [国家集训队]单选错位(期望)
P1297 [国家集训队]单选错位 期望入门 我们考虑涂到第$i$道题时的情况 此时题$i$答案有$a[i]$种,我们可能涂$a[i+1]$种 分类讨论: 1.$a[i]>=a[i+1]$: 可 ...
- Luogu P1297 [国家集训队]单选错位
P1297 [国家集训队]单选错位 题目背景 原 <网线切割>请前往P1577 题目描述 gx和lc去参加noip初赛,其中有一种题型叫单项选择题,顾名思义,只有一个选项是正确答案.试卷上 ...
- bzoj2134单选错位
bzoj2134单选错位 题意: 试卷上n道选择题,每道分别有ai个选项.某人全做对了,但第i道题的答案写在了第i+1道题的位置,第n道题答案写在第1题的位置.求期望能对几道.n≤10000000 题 ...
- BZOJ 2134: 单选错位( 期望 )
第i个填到第i+1个的期望得分显然是1/max(a[i],a[i+1]).根据期望的线性性, 我们只需将每个选项的期望值累加即可. ---------------------------------- ...
- BZOJ_2134_单选错位——期望DP
BZOJ_2134_单选错位——期望DP 题意: 分析:设A为Ai ∈ [1,ai+1] 的概率,B为Ai = A(imodn+1)的概率显然P(A|B) = 1,那么根据贝叶斯定理P(B) = P( ...
- BZOJ2134 luoguP1297 [国家集训队]单选错位
单选错位 [问题描述] gx和lc去参加noip初赛,其中有一种题型叫单项选择题,顾名思义,只有一个选项是正确答案.试卷上共有n道单选题,第i道单选题有ai个选项,这ai个选项编号是1,2,3,…,a ...
- Bzoj 2134: [国家集训队2011]单选错位(期望)
2134: 单选错位 Time Limit: 10 Sec Memory Limit: 259 MB Description Input n很大,为了避免读入耗时太多,输入文件只有5个整数参数n, A ...
- P1297 [国家集训队]单选错位
题目背景 原 <网线切割>请前往P1577 题目描述 gx和lc去参加noip初赛,其中有一种题型叫单项选择题,顾名思义,只有一个选项是正确答案.试卷上共有n道单选题,第i道单选题有ai个 ...
随机推荐
- android开发之edittext弹出输入框遮挡住文字。解决方法
在ManiFest清单文件中修改被遮挡的类的EditText android:windowSoftInputMode="adjustPan|stateHidden"
- android 申请忽略电池节电
fun checkBattery(){ var main = activity as MainActivity if(main.isIgnoringBatteryOptimizations()){ L ...
- Unity - NGUI - 优化ScrollView的一些心的
ScrollView是NGUI非常好用的一个内置组件,但是效率不好,当子物体过多的时候,一旦开始拖动就帧数狂掉,我目前有3个解决思路: 1. NGUI自带的Example 8 - Scroll Vie ...
- WebStorm下ReactNative代码提示设置
ReactNative 代码智能提醒 (Webstrom live template) https://github.com/virtoolswebplayer/ReactNative-LiveTe ...
- Fragment的跳转
1. 设置主Fragment 其它fragment得到它就可以了. 1 val ft = fragmentManager?.beginTransaction() 2 val maiFrgmt = Ma ...
- el-select 封装
这里打算封装一个全局el-select组件 MySelect.vue <template> <el-select v-if="options.length!==0" ...
- 小程序开发-基础组件icon/text/progress入门
小程序的基础组件--基础内容 基础内容分为三大组件: 1. icon--图标 index.wxml <view class="group"> <block wx: ...
- [bash]用于查找指定格式目录的程序
功能: 在指定目录下查找符合yyyy-MM-dd(-d)nnn模式的目录名,例如2020-03-22-b888 目标目录情况: [root@localhost testfolder]# ll tota ...
- 图解选择排序及算法优化(Java实现)
选择排序 前言 原理:每次循环对比找出最小/大值,将最值的元素交换至左侧 思想:直接选择排序(Straight Select Sort)算法思想:第一趟从n个元素的数据序列中选出关键字最小/大的元素并 ...
- Charles 抓包(Charles二)
前面安装了Charles,并初步配置了一下:https://blog.csdn.net/qq_38175040/article/details/105411407 今天开始正式抓包了 但过程却不是很顺 ...