
数学-概率论
JeraKrs
本人目前就职于百度商业研发部,有需要内推的朋友简历可发我邮箱 jerakrs@qq.com
展开
-
uva 10277 - Boastin' Red Socks(概率)
题目链接:uva 10277 - Boastin' Red Socks题目大意:给出p和q,表示概率p/q,处理问题,有n双红袜子,m双白袜子,从中连续取两双袜子,两双袜子de原创 2013-10-30 14:49:37 · 1472 阅读 · 1 评论 -
uva 542 - France '98(概率)
题目链接:uva 542 - France '98题目大意:有16支球队比赛,给出16支球队的名称,然后给出16*16的表格,g[i][j] 表示i队胜j队的概率,问说16支球队获得总冠军的概率。解题思路:模拟比赛的过程,将队伍分组,每次和组内的其他队伍决胜负,概率之和即为出现的概率,只要处理好下标就可以了。#include #include #incl原创 2013-10-29 20:54:02 · 1756 阅读 · 0 评论 -
uva 11605 - Lights inside a 3d Grid(概率)
题目链接:uva 11605 - Lights inside a 3d Grid题目大意:给定一个三维坐标系大小,每个位置有一个灯,初始状态为关,每次随机选中两个点,以这两点为对角线的长方体内所有灯转变状态。操作K次,问说平均情况下,最后会有多少栈灯亮着。解题思路:枚举坐标系上的点,计算单个点亮着的概率,然后累加即使整体的期望。对于一个点x,y,z,分别考虑每维坐标系,例如x,选中原创 2014-08-12 10:12:33 · 1282 阅读 · 0 评论 -
uva 10529 - Dumb Bones(概率+区间dp)
题目连接:uva 10529 - Dumb Bones题目大意:给定n,表示要放n个骨牌,每次放下骨牌,有可能向左倒的概率为pl,向右倒的概率为pr,如果倒下,会将那一侧的骨牌全部推倒,可以选择位置先后放骨牌,问说一种放骨牌次数最少的期望是多少。解题思路:dp[i]表示放i个骨牌需要的步数期望,维护一个最优放的位置,dp[i] = min\{ (从i-1到i的步数)} + (0到i原创 2014-08-12 10:28:27 · 2014 阅读 · 1 评论 -
uva 11346 - Probability(概率)
题目链接:uva 11346 - Probability题目大意:给定x,y的范围,以及s,问说在该范围内选取一点,和x,y轴形成图形的面积大于s的概率。解题思路:首先达到方程xy ≥ s,即y = s / x。S2的面积用积分计算,y = s / x的原函数为lnx所以S2=s∗(ln(a)−ln(x))#include #include #inc原创 2014-08-11 21:52:48 · 1461 阅读 · 0 评论 -
uva 10491 - Cows and Cars(概率)
题目连接:uva 10491 - Cows and Cars题目大意:给出a,b和c,表示有a + b 个门, a个后面是牛, b个后面是车, 然后你从中选一个门,之后有一个知情人帮你打开c个后面是牛的门(因为1≤c解题思路:问题可以分成两种情况:1)第一次选中牛的时候,a/(a + b), 然后打开c个后面是牛的门,总关门数为(a + b - c - 1),然后还有原创 2013-10-28 19:44:36 · 1508 阅读 · 0 评论 -
uva 11762 - Race to 1(马尔可夫)
题目链接:uva 11762 - Race to 1题目大意:给出一个整数N,每次可以在不超过N的素数中随机选择一个P,如果P是N的约数,则把N变成N/P,否则N不变。问平均情况下需要多少次选择,才能把N变成1.解题思路:马尔可夫,例如N=6时,f(6)=1+f(6)∗13+f(4)∗13+f(2)∗13,1是只第一次转移,后面分别对应的是选择5,2,3的情况.所以有f(x)=∑f原创 2014-08-11 21:04:35 · 1435 阅读 · 0 评论 -
uva 11291 - Smeech(概率+词法分析)
题目链接:uva 11291 - Smeech题目大意:就是有一个脑残,又发明了一种机器语言,语言有两种,一种直接就是一个值,一种就是三元式(p e1 e2),有p的概率为e1+e2,1-p的概率为e1-e2.三元式的值即为期望。给定一个语句,求值。注意语句可以嵌套的。解题思路:期望很容易求,主要是因为语句有嵌套,所以用类似语法分析的方法处理,具体看代码。#include #原创 2014-08-11 21:29:54 · 1528 阅读 · 0 评论 -
uva 557 - Burger(概率)
题目链接:uva 557 - Burger题目大意:Ben和Bill是一对双胞胎,生日那天他们请了2n个朋友(包括他们自己,题目给出的即为2n),然后有n个汉堡和n个三明治,然后由Ben的左边开始分食物,每个人选取食物的方式是先丢硬币,正面汉堡,反面是三明治,问最后双胞胎兄弟那道同一种食物的概率。解题思路:题目可以递推兄弟两拿到不同的食物的概率,然后用1-p就是所要的答案。原创 2013-11-03 15:10:21 · 2956 阅读 · 0 评论 -
uva 10417 Gift Exchanging(概率 + dfs)
题目连接:uva 10417 Gift Exchanging题目大意:有个2B过生日,请了n个朋友,每个朋友都会带一个礼物,礼物都是有装的,但是包装只有5种,然后现在给出c1 ~c5,表示说现在桌子上出现各种包装的礼物各有多少个,然后告诉你每个人会带来5种包装的概率(和为1),第一个人是2B最好的朋友,2B想随即抽取一个,请问他应该拿哪一种包装的最好,即拿到最好朋友送得礼物的概率最大,原创 2013-11-17 00:10:06 · 3069 阅读 · 0 评论 -
uva 11468 - Substring(AC自动机+概率)
题目链接:uva 11468 - Substring题目大意:给出一些字符和各自字符对应的选择概率,随机选择L次后得到一个长度为L的字符串,要求该字符串不包含任意一个子串的概率。解题思路:构造AC自动机之后,每随机生成一个字母,等于是在AC自动机上走一步,所有子串的结束位置的节点标记为禁止通行,然后问题转换成记忆搜索处理。#include #include #include原创 2014-08-28 21:29:25 · 1105 阅读 · 0 评论 -
uva 11637 - Garbage Remembering Exam(概率)
题目链接:uva 11637 - Garbage Remembering Exam题目大意:大白数里有很详细的题意。解题思路:对于有序的序列来说,考虑每个位置为有效性的概率。C(2∗kn−1−x)∗A(2k2k)∗A(n−1−xn−1−x)A(n−1n−1)x为考虑当前位置,然后与该位置距离小于等于k的位置个数。该位置有效的话,则对应的要将原先邻近的2*k个单词放到另外的位置上原创 2014-08-12 00:03:50 · 1678 阅读 · 2 评论 -
Codeforces 482C Game with Strings(dp+概率)
题目链接:Codeforces 482C Game with Strings题目大意:给定N个字符串,现在从中选定一个字符串为答案串,你不知道答案串是哪个,但是可以通过询问来确定,每次询问一个位置上字符为多少。现在你询问的每个位置的概率是相同的,(问过的位置不会再问),求询问次数的期望。解题思路:因为字符串长度不会大于20,所以用二进制表示询问了哪些位置,C[s]即原创 2014-11-03 10:18:46 · 2040 阅读 · 0 评论 -
uva 1358 - Generator(KMP+期望)
题目链接:uva 1358 - Generator题目大意:给定n,表示有n中字符,然后给定一个字符串S,一开始字符串为空,现在每次随机生成一个1~n的字符添加到字符串末尾,问说字符串包含S为子串的生成次数期望。解题思路:首先要对S进行预处理,求出失配数组。定义dp[i]表示末尾部分匹配了i个S串所需要的次数期望,每次枚举可能出现的字符1~n。对于S字符串,i+1肯定是确定原创 2014-09-04 22:07:43 · 1539 阅读 · 0 评论 -
hdu 5035 Delivery(期望)
题目链接:hdu 5035 Delivery#include #include #include using namespace std;int main () { int cas; scanf("%d", &cas); for (int kcas = 1; kcas <= cas; kcas++) { int n; double p, s = 0; sc原创 2015-07-29 00:05:04 · 637 阅读 · 0 评论 -
hdu 5449 Robot Dog(期望+lca)
hdu 5449 Robot Dog(期望+lca)题目链接:hdu 5449 Robot Dog解题思路n有50000,询问次数有100,每次询问的路径点数最多有100,对于不同询问去做动态规划,开一个dp[u][i]dp[u][i]表示在第u个节点匹配了i个的期望,显然最坏情况下dp数组的每个状态都要遍历到,复杂度为o(nqp)o(nqp),不能接受。换个想法,如果我们能知道从节点i走到节点j的原创 2015-09-29 16:09:34 · 1452 阅读 · 0 评论 -
uva 11181 - Probability|Given(概率)
题目链接:uva 11181 - Probability|Given题目大意:有n个人去超市买东西,给出r,每个人买东西的概率是p[i],当有r个人买东西的时候,第i个人恰好买东西的概率。解题思路:dfs思路很简单,主要注意说ans[i] / P, (P为n个人中买东西的人数为r的事件发生的概率)。#include #include const int原创 2013-10-31 08:39:11 · 1927 阅读 · 0 评论 -
uva 12230 - Crossing Rivers(概率)
题目链接:uva 12230 - Crossing Rivers题目大意:有个人每天要去公司上班,每次会经过N条河,家和公司的距离为D,默认在陆地的速度为1,给出N条河的信息,包括起始坐标p,宽度L,以及船的速度。船会往返在河的两岸,人到达河岸是,船的位置是随机的(包括方向)。问说人达到公司所需要的期望时间。解题思路:陆地上的时间是固定的,只需要分别计算过每条河的时间即可。因为人到原创 2014-08-11 21:14:18 · 2062 阅读 · 0 评论 -
uva 11176 - Winning Streak(期望)
题目链接:uva 11176 - Winning Streak题目大意:给出n和p,有n场比赛,获胜的概率为p,问说连续获胜的期望值是多少。解题思路:昨天刚做了一道连续获胜的题目uva 10328 - Coin Toss,这不过这道题目始求期望,不过可以通过那道题目的思路求出概率,然后求期望就好求多了,dp[i][j]表示说在前i场比赛中,连续获胜的次数不超过j次,本题要结原创 2013-11-05 21:08:55 · 1700 阅读 · 0 评论 -
uva 10056 - What is the Probability ?(概率)
题目连接:uva 10056 - What is the Probability ?题目大意:给出n和p以及m,表示有n个人在丢色子, 谁先丢到某个值就表示胜利,每个人丢到的胜利数值的概率都为p,问第m个人获胜概率。解题思路:因为n个人可以轮流丢色子,所以要自己定一个下限,而且以为人数比较多,每次并不需要将m以外的人都考虑进去,可以默认为没有丢到胜利的数值。原创 2013-10-29 20:44:57 · 5594 阅读 · 0 评论 -
uva 10169 - Urn-ball Probabilities !(概率)
题目链接:uva 10169 - Urn-ball Probabilities !题目大意:在一个箱子中,原本有1个红球,然后任意取出(有放回)一个球,然后再往里放一个白球(每次取都要放进一个白球),给出n,表示取了n次球,要求输出至少有连续抽到两个红球的概率,以及没有连续抽到红球的概率,因为没有连续抽到红球的概率非常小,所以输出小数点后有几位为0.解题思路:将每两次去球作原创 2013-10-30 20:46:10 · 2012 阅读 · 0 评论 -
fzu 2103 Bin & Jing in wonderland(组合数学)
题目连接:fzu 2103 Bin & Jing in wonderland题目大意:给出n,k和r,表示有n种礼物,可以抽取k次礼物,要挑选r个礼物送人。然后给出n种礼物被抽中的概率,以及想要送得礼物序号。注意,抽取礼物之后只能按照礼物的标号从大到小排序后选后r个送人。例如,想要送1,1,2这样的情况,可以抽取4次。那么就只有抽取3个1和1个2的情况才可以,否则抽取两个2的话排序后即原创 2013-12-14 23:49:53 · 1713 阅读 · 0 评论 -
hdu 4586 Play the Dice(数论)
题目链接:hdu 4586 Play the Dice题目大意:给出一个n,表示有一个正n面形,然后给出每个面的得分。接着是m,表示丢到哪些面后可以获得再掷一次的机会,问说得分的期望。解题思路:将首次的得分期望看做是a0, 第二次的得分期望即为a0 * (m/n), 第n次的得分期望即为a0 *(m/n)^(n-1),期望p = ∑(n)a0 * q^(i-1),原创 2014-04-17 09:16:51 · 1026 阅读 · 1 评论 -
Codeforces 442B Andrey and Problem(贪心)
题目链接:Codeforces 442B Andrey and Problem题目大意:Andrey有一个问题,想要朋友们为自己出一道题,现在他有n个朋友,每个朋友想出题目的概率为pi,但是他可以同时向多个人寻求帮助,不过他只能要一道题,也就是如果他向两个人寻求帮助,如果两个人都成功出题,也是不可以的。解题思路:贪心,从概率最大的人开始考虑,如果询问他使得概率变大,则要询问。#原创 2014-06-30 09:04:30 · 1733 阅读 · 0 评论 -
hdu 4873 ZCC Loves Intersection(大数+概率)
题目链接:hdu 4873 ZCC Loves Intersection题目大意:给出N,D,表示在一个D维的坐标上,坐标范围为0~N-1。在这个坐标系中有D条线段,分别平行与各个坐标轴,每秒会根据题目中的伪代码随机生成各个线段的位置。两条直线相交的话会得一分,问每秒得分的期望。解题思路:总的情况(ND−1∗C(2N))D,两条直线相交的得分C(2D)∗s2∗ND−2∗(ND−2∗原创 2014-07-24 21:54:50 · 1359 阅读 · 0 评论 -
Codeforces 444B DZY Loves FFT(概率)
题目连接:Codeforces 444B DZY Loves FFT题目大意:根据题目的算法生成a,b数组,然后对于每个长度的l,求a[i]*b[l-i]的最大值。解题思路:概率问题,枚举前30大的数,如果有就可以直接输出答案,如果没有,就暴力枚举b数组为1的位置找最大值。#include #include #include using namespace std;t原创 2014-07-08 00:36:43 · 2514 阅读 · 0 评论 -
uva 1390 - Interconnect(期望+哈希+记忆化)
题目连接:uva 1390 - Interconnect题目大意:给出n表示有n个点,m表示有m条边,现在任选两点建立一条边,直到整个图联通,问说还需建立边数的期望,建过边的两点仍可以建边。解题思路:哈希的方法很是巧妙,将各个联通分量中节点的个数c[i]转换成一个30进制的数(因为节点个数最多为30),因为结果很大,所以对1e5+7取模。获得的哈希值作为插入和搜索的起点。#in原创 2014-07-27 14:24:24 · 1874 阅读 · 0 评论 -
Codeforces 453A Little Pony and Expected Maximum(期望)
题目链接:Codeforces 453A Little Pony and Expected Maximum题目大意:给定m,表示有一个m面的色子,每个面的值为1~m,概率相同,丢n次,问说最大值的期望。解题思路:丢n次,最大值为i的情况有in−(i−1)n,然后可以写出期望的公式,化简一下即可。注意爆double。#include #include #include #i原创 2014-08-02 22:33:31 · 1036 阅读 · 0 评论 -
uva 11722 - Joining with Friend(概率)
题目连接:uva 11722 - Joining with Friend题目大意:你和朋友乘火车,并且都会路过A市,给定两人可能到达A市的时段,火车会停w,问说两人可以见面的概率。解题思路:y = x + w 和y = x - w在给定时间内围成的面积除以时间的总面积,就是求面积的时候要分情况处理。#include #include #include using nam原创 2014-08-10 23:54:52 · 1623 阅读 · 0 评论 -
uva 11021 - Tribles(概率)
题目连接:uva 11021 - Tribles题目大意:有k只麻球,每只只活一天,临死之前可能会出生一些新的麻球,具体出生i个麻球的概率为P,给定m,求m天后麻球全部死亡的概率。解题思路:考虑一只麻球在m天后死亡的概率为f(m) 由全概率公式有f(i)=P0+P1∗f(i−1)+P2∗f(i−1)2…,于是考虑k只麻球,就有f(m)k/******************原创 2014-08-10 23:50:52 · 1877 阅读 · 0 评论 -
uva 11427 - Expect the Expected(概率)
题目链接:uva 11427 - Expect the Expected题目大意:你每天晚上都会玩纸牌,每天固定最多玩n盘,每盘胜利的概率为p,你是一个固执的人,每天一定要保证胜局的比例大于p才会结束游戏,若n局后仍没有,就会不开心,然后以后再也不完牌,问说你最多会玩多少个晚上。解题思路:当j/i ≤ p时有dp(i-1,j) (1-p) + dp(i-1, j-1)p,其他d原创 2014-08-10 23:57:08 · 1382 阅读 · 0 评论 -
uva 10288 - Coupons(概率)
题目链接:uva 10288 - Coupons题目大意:给定n,为有n中兑换卷,现在每开一次箱子,就能等概率的获得其中的一种兑换卷。问说平均情况下需要开多少个箱子才能集齐n种兑换卷。解题思路:dp[i]表示还有i种没获得,dp[i]=n−in∗dp[i]+in∗dp[i−1]+1===》dp[i]=dp[i−1]+ni#include #include #includ原创 2014-08-11 21:22:19 · 1667 阅读 · 0 评论 -
uva 1541 - To Bet or Not To Bet(记忆化+概率)
题目链接:uva 1541 - To Bet or Not To Bet题目大意:在一个棋盘上进行游戏,给定棋盘长度m,不算起始和终止,以及走的步数t。从起点开始,每轮可以丢一枚硬币,正面移动2步,方面移动1步;中间的格子有写操作,包括移动一定步数,停止一次操作。问说在t步内到达终点的概率。解题思路:dp[i][j]表示走到第i格用掉j步的概率,然后记忆化搜索,因为保证状态重复,并原创 2014-08-12 00:03:15 · 1534 阅读 · 0 评论 -
uva 11971 - Polygon(线性规划)
题目连接:uva 11971 - Polygon题目大意:给定一个长度为N的线段,要求切K刀,分成K+1个线段,问能组成K+1边形的概率。解题思路:K条线段能组成K边形的条件为任意一条边小于其他所有边的和,因为是求概率,所以和N无关。根据高中线性规划的知识,以二维为例:所以有ans=2K−K−12K#include #include #include usi原创 2014-08-12 11:06:52 · 1505 阅读 · 0 评论 -
LightOJ 1031 - Easy Game(概率)
题目链接:LightOJ 1031 - Easy Game代码#include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int maxn = 105;int N, A[maxn], S[maxn], dp[maxn][maxn];bool vis[maxn][maxn];void init原创 2015-11-10 12:58:40 · 732 阅读 · 0 评论