这题意真是...

题意:你在一个迷宫里,有一些门,每个门有一个参数x,如果为正表明你进入门后可以花x的时间出去,如果为负表明你进入门后可以花-x的时间回到出发的地方。每次回到出发的地方之后,不能记得之前的操作,因此每次你到这个地方,选择每个门的概率都是相等的。求出去的期望时间。

方法:

解一个期望方程即可。

走每个门概率都是1/n。设期望时间为t,对于某个门,设参数为x,如果x为正的,那么走这个门出去的期望时间是x,对总期望的贡献是1/n*x;如果x是负的,那么走这个门之后出去的期望时间就是在这个门里面浪费的时间(-x)再加上t,对总期望的贡献就是1/n*(t-x)。那么就可以列出方程,手算一下就行。

例如:
3个门,参数分别为3,-6,-9
1/3*3+1/3*(x+6)+1/3*(x+9)=x
1/3*3+1/3*x+1/3*6+1/3*x+1/3*9=x
(1-1/3*2)x=1/3*(3+6+9)
x=18

3个门,参数分别为3,-30,-60
3 -30 -60
1/3*3+1/3*(x+30)+1/3*(x+60)=x
x=91

2个门,参数分别为-30,-60
1/2*(x+30)+1/2*(x+60)=x
x=inf

那么,设a2为负值的数量,a1为所有参数绝对值之和
1/n*a1=(1-1/n*a2)x
a1/n=(1-a2/n)x
x=a1/n/(1-a2/n)=a1/(n*(1-a2/n))=a1/(n-a2)

解完方程之后就很简单了...用奇怪的方法算一下a1和a2就行...

错误记录(本地):题意杀,把题意当成了“如果是正的,在开始的x分钟不能出去,之后就能出去;如果是负的,则相反”

 #include<cstdio>
#include<algorithm>
using namespace std;
int n,a1,a2,a3,T,TT;
int main()
{
int i,t;
scanf("%d",&T);
for(TT=;TT<=T;TT++)
{
scanf("%d",&n);
a1=a2=;
for(i=;i<=n;i++)
{
scanf("%d",&t);
if(t<)
a2++,a1-=t;
else
a1+=t;
}
if(a2==n)
{
printf("Case %d: inf\n",TT);
continue;
}
a2=n-a2;
a3=__gcd(a1,a2);
printf("Case %d: %d/%d\n",TT,a1/a3,a2/a3);
}
return ;
}

A Dangerous Maze LightOJ - 1027的更多相关文章

  1. Day11 - F - A Dangerous Maze LightOJ - 1027

    求期望注意期望的定义,这题我们可以分正负数情况,设所求期望为E 正数: 1/n*x_i 负数:1/n*(E+x_j) 此时概率为1/n,根据期望定义,他回到起点后出去的期望为E,花费回起点的时间为x_ ...

  2. LightOJ - 1027 A Dangerous Maze —— 期望

    题目链接:https://vjudge.net/problem/LightOJ-1027 1027 - A Dangerous Maze    PDF (English) Statistics For ...

  3. Lightoj 1027 - A Dangerous Maze 【期望】

    1027 - A Dangerous Maze PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB Y ...

  4. [LightOJ 1027] A Dangerous Maze

    A Dangerous Maze You are in a maze; seeing n doors in front of you in beginning. You can choose any ...

  5. A Dangerous Maze (II) LightOJ - 1395(概率dp)

    A Dangerous Maze (II) LightOJ - 1395(概率dp) 这题是Light Oj 1027的加强版,1027那道是无记忆的. 题意: 有n扇门,每次你可以选择其中一扇.xi ...

  6. LightOJ - 1395 A Dangerous Maze (II) —— 期望

    题目链接:https://vjudge.net/problem/LightOJ-1395 1395 - A Dangerous Maze (II)    PDF (English) Statistic ...

  7. [LOJ 1027] Dangerous Maze

    A - A Dangerous Maze Time Limit:2000MS     Memory Limit:32768KB     64bit IO Format:%lld & %llu ...

  8. LightOJ 1027 - A Dangerous Maze(求期望)

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1027 题意:又一个迷宫,有n个门,每个门又一个值num,如果num>0 说明在n ...

  9. LightOj 1027 A Dangerous Maze【概率】

    题目链接:http://www.lightoj.com/volume_showproblem.php? problem=1027 题意: 你面前有n个门,每一个相应一个数字,若为正xi.代表xi分钟后 ...

随机推荐

  1. 修复Xcode升级错误 — PCH File Error

    http://www.rockia.net/2013/03/fix-xcode-update-pch-file-error Error:PCH File Built From A Different ...

  2. https://github.com/PyMySQL/PyMySQL/blob/master/pymysql/connections.py

    # Python implementation of the MySQL client-server protocol # http://dev.mysql.com/doc/internals/en/ ...

  3. 【酷Q&C++】如何利用酷Q制作一个机器人?

    ——酷Q Air教程 要想阅读本篇教程,读者需要基本的C++知识以及Visual Studio 2010/2015/2017 首先,需要从官方网站下载软件 https://cqp.cc/t/23253 ...

  4. 有奖试读&amp;征文——我们在互联网上奋斗的故事 获奖名单发布

    互联网是一个年轻的行业,同一时候也是一个推陈出新.不断进化的行业. 中国互联网行业在近期的十五年里.以如何的方式在"进化".我相信非常多奋斗在互联网战线上的你们最深有感触.读一读& ...

  5. Struts%$#区别

    1.#符号的用途一般有三种.1)访问非根对象属性,例如示例中的#session.msg表达式,由于Struts 2中值栈被视为根对象,所以访问其他非根对象时,需要加#前缀.实际上,#相当于Action ...

  6. Linux时间子系统之二:表示时间的单位和结构【转】

    本文转载自:http://blog.csdn.net/droidphone/article/details/7979295 版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+] ...

  7. 包、修饰符、内部类、匿名内部类(java基础知识十)

    1.package关键字的概述及作用 * A:为什么要有包     * 将字节码(.class)进行分类存放  * B:包的概述     *   * C:包的作用     * 包名要定义在第一行,   ...

  8. 如何反编译silverlight

     @years(945060991)  15:10:28问一下  如何反编译silverlight观,一世沧桑如画♥(752816388)  15:10:46解压就行@years(945060991) ...

  9. codeforces 691F F. Couple Cover(组合计数)

    题目链接: F. Couple Cover time limit per test 3 seconds memory limit per test 512 megabytes input standa ...

  10. Watir: Watir-WebDriver对富文本编辑器的定位于Watir是不一致的。

    Watir对富文本编辑,一般可以采用b.frame().document.body.innerText = "Value you want to insert"但是Watir-We ...