Link

  https://jzoj.net/senior/#main/show/3468

Description

  osu 是一款群众喜闻乐见的休闲软件。
  我们可以把osu的规则简化与改编成以下的样子: 
  一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为一个长度为n的01串。在这个串中连续的x个1可以贡献x^3的分数,这x个1不能被其他连续的1所包含(也就是极长的一串1,具体见样例解释)
  现在给出n,以及每个操作的成功率,请你输出期望分数,输出四舍五入后保留1位小数。

Solution

  我疑心这是一道极好的题目,网上的题解阐述的是大概,吾大都不懂。下面是我自个儿的理解,赘述一下。。

60分

  我们发现,如果位置是0,那么对答案没有一点贡献。

  答案是由一个或一段的1贡献的。所以,我们可以枚举连续的一段1的位置,使其满足它是相对独立的,没有与别段有交集。

100分

  有办法可以快速处理以上的方法吗。答案使没有的。我们只能另辟途径。

  看到概率,脑子里除了DP就是暴力。

  循规蹈矩地设F[i]表示前i位的期望答案。

  当前位选0,那么答案便是f[i-1];当前位选1,那么对答案的贡献自然就多了,设这个多出来的贡献为k。

  根据上面的理解可以得到

  F[i]=f[i-1]*(1-p[i])+(f[i-1]+k)*p[i]

  整理可得

  f[i]:=f[i-1]+贡献*p[i];

  关键是贡献的如果求贡献。我们知道,每次多1,那么答案就多(x+1)3--x3=3*x2+3x+1,x显然是一个期望长度。令人蛋疼的是,期望的平方不等于平方的期望

  设g1表示一次项的期望长度,g2表示二次项的期望长度。

  g1相当于x,是期望长度,那么显然g1[i]=(g1[i-1]+1)*p[i]

  因为(x+1)2-x2=2x+1,故可得g2[i]=(g2[i-1]+2*g1[i-1]+1)*p[i];

  贡献的问题显然可得。具体见标程

Code

  60分

var
now,ans:extended;
n,i,j:longint;
a:array[..] of extended;
begin
assign(input,'osu.in');reset(input);
assign(Output,'osu.out');rewrite(output); readln(n); for i:= to n do
readln(a[i]); for i:= to n do
begin
now:=;
for j:= to n-i+ do
begin
now:=now*a[i+j-]; ans:=ans+j*j*j*now*(-a[i-])*(-a[i+j]);
end;
end; writeln(ans::);
end.

  100分

var
n,i:longint;
a,f,g1,g2:array[..] of extended;
begin
assign(input,'osu.in');reset(input);
assign(Output,'osu.out');rewrite(output); readln(n); for i:= to n do
readln(a[i]); for i:= to n do
begin
g1[i]:=(g1[i-]+)*a[i];
g2[i]:=(g2[i-]+*g1[i-]+)*a[i];
f[i]:=f[i-]+(*g2[i-]+*g1[i-]+)*a[i];
end; writeln(f[n]::);
end.

[jzoj]3468.【NOIP2013模拟联考7】OSU!(osu)的更多相关文章

  1. 【NOIP2013模拟联考7】OSU

    [NOIP2013模拟联考7]OSU 描述 Description osu 是一款群众喜闻乐见的休闲软件. 我们可以把osu的规则简化与改编成以下的样子: 一共有n次操作,每次操作只有成功与失败之分, ...

  2. JZOJ【NOIP2013模拟联考14】隐藏指令

    JZOJ[NOIP2013模拟联考14]隐藏指令 题目 Description 在d维欧几里得空间中,指令是一个长度为2N的串.串的每一个元素为d个正交基的方向及反方向之一.例如,d = 1时(数轴) ...

  3. JZOJ 3493. 【NOIP2013模拟联考13】三角形

    3493. [NOIP2013模拟联考13]三角形(triangle) (File IO): input:triangle.in output:triangle.out Time Limits: 10 ...

  4. JZOJ 3487. 【NOIP2013模拟联考11】剑与魔法(dragons)

    3487. [NOIP2013模拟联考11]剑与魔法(dragons) (Standard IO) Time Limits: 1000 ms  Memory Limits: 131072 KB  De ...

  5. JZOJ 3470. 【NOIP2013模拟联考8】最短路(path)

    470. [NOIP2013模拟联考8]最短路(path) (Standard IO) Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed ...

  6. JZOJ 3463. 【NOIP2013模拟联考5】军训

    3463. [NOIP2013模拟联考5]军训(training) (Standard IO) Time Limits: 2000 ms  Memory Limits: 262144 KB  Deta ...

  7. JZOJ 3462. 【NOIP2013模拟联考5】休息(rest)

    3462. [NOIP2013模拟联考5]休息(rest) (Standard IO) Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed ...

  8. JZOJ 3461. 【NOIP2013模拟联考5】小麦亩产一千八(kela)

    3461. [NOIP2013模拟联考5]小麦亩产一千八(kela) (Standard IO) Time Limits: 1000 ms  Memory Limits: 262144 KB  Det ...

  9. [jzoj]3456.【NOIP2013模拟联考3】恭介的法则(rule)

    Link https://jzoj.net/senior/#main/show/3456 Description 终于,在众亲们的奋斗下,最终boss 恭介被关进了库特设计的密室.正当她们松了一口气时 ...

随机推荐

  1. python2x和python3的区别

    1,源码的区别 py2x:源码比较混乱,重复代码较多,冗余 py3x: 源码崇尚优美,代码清晰简单 2,用户交互的区别: py2x:python2中input的到的数据类型为int型,Python2x ...

  2. linux --xampp 配置多个网站

    我们想要在本地安装两个测试域名,www.abc.tld, www.xyz.tld, 分别指向到 htdoc 目录下的 abc.tld 和 xyz.tld 文件夹下.tld 是顶级域名 the top ...

  3. eclipse添加jar包进jar源码debug调试

    1.点击调试配置 2.选中源码 3.点击添加 4.点击java路径变量 5.点击环境变量配置 6.输入名称及jar包复制限定名

  4. [转]在static代码块或static变量的初始化过程中使用ServiceManager提供的api的陷阱

    一. 案例 1.源码: /** @hide */ private TelephonyManager(int slotId) { mContext = null; mSlotId = slotId; i ...

  5. 只要三步,使用html5+js实现像素风头像生成器

    只要三步,使用html5+js实现像素风头像生成器 html5的画布给我们带来了很大的空间,其实像素风格头像生成器只是用到了画方块的方法.画一个像素头像,只要三步,1.解决像素点,2.解决像素点之间的 ...

  6. kafka单机安装和启动

    1.下载并解压到/usr/local/src目录下 2.运行kafka需要使用Zookeeper,先启动Zookeeper,如果没有Zookeeper,可以使用kafka自带打包和配置好的Zookee ...

  7. APP测试点注意事项汇总

    1.异常测试:包括业务流程的异常情况:业务场景的异常:操作习惯的异常(比如答题过程中会出现声音干扰这样很不友好喔~) 2.网络测试:网络切换的过程中,APP会不会异常:断网情况进行一些操作,APP会不 ...

  8. 简单使用zabbix监控nginx是否存活

    1.在agent端修改主配置文件 vim /etc/zabbix/zabbix_agentd.conf ........ ........ UserParameter=nginx.status[*], ...

  9. Android真机测试,连接到本地服务器的方法

    1. 前言 作为一名Android开发者,不管怎么说,都会经历使用Android真机来测试连接本地服务器这样的事情.这里所说的“本地服务器”大多数时候指的是:搭载有某种服务器软件的PC,例如搭载有To ...

  10. python3学习笔记之十七

    1.  网站本质:通过socket建立连接. 服务端(网站) 1.  先启动并监听:80端口 4.  获取请求信息 请求头 请求体 5.  处理请求 响应内容: 响应头:\r\n\r\n响应体     ...