51Nod 1667 概率好题 - 容斥原理】的更多相关文章

题目传送门 无障碍通道 有障碍通道 题目大意 若$L_{i}\leqslant x_{i} \leqslant R_{i}$,求$\sum x_{i} = 0$以及$\sum x_{i} < 0$的方案数.$(L_{i}R_{i} \geqslant 0)$(好吧.是概率) 听完题解感觉自己是个傻逼.组合数学白学了. 如果$L_{i} \neq 0$,那么取$a_{i} = x_{i} - L_{i}$. 然后容斥. 如何处理$\sum x_{i} < 0$?加一个物品$0\leqslant…
Description: 甲乙进行比赛. 他们各有k1,k2个集合[Li,Ri] 每次随机从他们拥有的每个集合中都取出一个数 S1=sigma甲取出的数,S2同理 若S1>S2甲胜 若S1=S2平局 否则乙胜 分别求出甲胜.平局.乙胜的概率. (显然这个概率是有理数,记为p/q,则输出答案为(p/q)%(1e9+7))(逆元) 注意 多组数据 Solution: 题解推荐 非常没有思路的神仙题. 大概的收获就是: 0.求概率,就是胜的方案数,除以总的情况数. 1.第一步的操作非常巧妙.Ri-xi…
1486 大大走格子 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 160 难度:6级算法题   有一个h行w列的棋盘,里面有一些格子是不能走的,现在要求从左上角走到右下角的方案数. Input 单组测试数据. 第一行有三个整数h, w, n(1 ≤ h, w ≤ 10^5, 1 ≤ n ≤ 2000),表示棋盘的行和列,还有不能走的格子的数目. 接下来n行描述格子,第i行有两个整数ri, ci (1 ≤ ri ≤ h, 1 ≤ ci ≤ w),表…
51nod 200题辣ψ(`∇´)ψ !庆祝! 51nod 1678 lyk与gcd | 容斥原理 题面 这天,lyk又和gcd杠上了. 它拥有一个n个数的数列,它想实现两种操作. 1:将 ai 改为b. 2:给定一个数i,求所有 gcd(i,j)=1 时的 aj 的总和. Input 第一行两个数n,Q(1<=n,Q<=100000). 接下来一行n个数表示ai(1<=ai<=10^4). 接下来Q行,每行先读入一个数A(1<=A<=2). 若A=1,表示第一种操作,…
题目 甲乙进行比赛. 他们各有k1,k2个集合[Li,Ri] 每次随机从他们拥有的每个集合中都取出一个数 S1=sigma甲取出的数,S2同理 若S1>S2甲胜 若S1=S2平局 否则乙胜 分别求出甲胜.平局.乙胜的概率. (显然这个概率是有理数,记为p/q,则输出答案为(p/q)%(1e9+7))(逆元) 注意 多组数据 分析 考虑甲胜的概率,其他类似, \(\sum x_i>\sum y_i\),其中\(L1[i]<=x_i<=R1[i],L2[i]<=y_i<=R…
[CF913F]Strongly Connected Tournament 题意:有n个人进行如下锦标赛: 1.所有人都和所有其他的人进行一场比赛,其中标号为i的人打赢标号为j的人(i<j)的概率为$p=a\over b$.2.经过过程1后我们相当于得到了一张竞赛图,将图中所有强联通分量缩到一起,可以得到一个链,然后对每个大小>1的强联通分量重复过程1.3.当没有大小>1的强连通分量时锦标赛结束. 现在给出n,a,b,求期望比赛的场数. $n\le 2000,a<b\le 1000…
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1105 1105 第K大的数 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 收藏 关注 数组A和数组B,里面都有n个整数.数组C共有n^2个整数,分别是A[0] * B[0],A[0] * B[1] ......A[1] * B[0],A[1] * B[1]......A[n - 1] * B[n - 1](数组A同数组B的组合).求…
1537:见前几篇. 1627:题意:给定n,m的网格(10^5),初始状态为(1,1),你每次可以瞬移到右下方(不可以同行同列逗留)任何一个方格里,求移动到n,m的方案数. 一句话题解:首先很容易想到n^2的DP,不过实际上没必要,我们枚举走了几步,然后插板法看n和m分别分解为i个数的方案数,乘起来就好,也就是求这个式子(默认n小于m) $ \sum\limits_{i = 1}^n {\left( \begin{array}{l}n - 1\\i - 1\end{array} \right)…
题目大意:你在迷宫里,有n扇门,每个门有一个val,这个val可正可负,每次通过一扇门需要abs(x)分钟,如果这个门的val是正的,那么就直接出了迷宫,否则回到原地,问出去迷宫的期望是多少? 思路:设d表示出去的概率,然后我们可以按照第三个样例来举例d = 1/3 * 3  + 1/3( 6 + d) + 1/3 (9 + d); 然后把d都放到一边去就好了. //看看会不会爆int!数组会不会少了一维! //取物问题一定要小心先手胜利的条件 #include <bits/stdc++.h>…
题目链接:https://cn.vjudge.net/contest/285964#problem/A 题目大意:每一次给你你一个数,然后对于每一次操作,可以将当前的数的每一位互换,如果互换后的数小于等于原来的数,那么停止操作,如果大于原来的数,则继续操作,到达当前这些数字能租成的最大的数的时候停止,然后问你能组成最大的数概率是多少? 具体思路:对于当前的数,我们先计算出这个比这个数大的有多少个,这个过程可以通过全排列的函数来进行计算.然后再计算一下当前的位数能构成的数的个数是多少,然后就开始求…