首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
【BZOJ4005】[JLOI2015] 骗我呢(容斥,组合计数)
】的更多相关文章
[BZOJ4005][JLOI2015]骗我呢-[dp+容斥]
Description 传送门 Solution 如果单独考虑一行i,则左边位置的数严格比右边位置的数小.而一行有m个位置,它们可以填[0,m]这m+1个数,则必然有一个数不存在. 定义第i行的第j位突变需要满足$x[i][j+1]-x[i][j]>1$,此时不存在的数为j. 通过分析可以得到,假如在i-1行的突变位置为j+1,则第i行突变位置的合法范围为[j,m].* 设f[i][j]为在第i行,突变位置为j的情况数. 则递推式为:$f[i][j]=f[i-1][j+1]+f[i][j-1]$…
bzoj4005[JLOI2015]骗我呢
http://www.lydsy.com/JudgeOnline/problem.php?id=4005 神题~远距离orz 膜拜PoPoQQQ大神 #include<cstdio> #include<cstdlib> #include<iostream> #include<fstream> #include<algorithm> #include<cstring> #include<string> #include<…
【BZOJ4005】[JLOI2015] 骗我呢(容斥,组合计数)
[BZOJ4005][JLOI2015] 骗我呢(容斥,组合计数) 题面 BZOJ 洛谷 题解 lalaxu #include<iostream> using namespace std; #define MOD 1000000007 #define MAX 3000300 void add(int &x,int y){x+=y;if(x>=MOD)x-=MOD;} int n,m,inv[MAX],jc[MAX],jv[MAX],N,ans; int Calc(int x,in…
[JLOI2015]骗我呢
[JLOI2015]骗我呢 Tags:题解 作业部落 评论地址 TAG:数学,DP 题意 骗你呢 求满足以下条件的\(n*m\)的矩阵的个数对\(10^9+7\)取模 对于矩阵中的第\(i\)行第\(j\)列的元素\(x_{i,j}\)都有 \(x_{i,j}<x_{i,j+1}\) \(x_{i,j}<x_{i-1,j+1}\) \(0\le x_{i,j}\le m\) 题解 Part 0 前言 不会做啊!(杠了四五个小时!) 谢两位dalao:blog1.blog2 以下图片均来自于此篇…
[Hdu-5155] Harry And Magic Box[思维题+容斥,计数Dp]
Online Judge:Hdu5155 Label:思维题+容斥,计数Dp 题面: 题目描述 给定一个大小为\(N*M\)的神奇盒子,里面每行每列都至少有一个钻石,问可行的排列方案数.由于答案较大,输出对\(1e9+7\)取模后的结果. 输入 多组数据.每组数据读入两个整数\(N,M\) \(0≤N,M≤50\) 输出 每组数据输出一行表示答案. 样例 Input 1 1 2 2 2 3 Output 1 7 25 Hint There are 7 possible arrangements…
bzoj2839: 集合计数 容斥+组合
2839: 集合计数 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 523 Solved: 287[Submit][Status][Discuss] Description 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得 它们的交集的元素个数为K,求取法的方案数,答案模1000000007.(是质数喔~) Input 一行两个整数N,K Output 一行为答案. Sample Inp…
BZOJ 3294: [Cqoi2011]放棋子 计数 + 容斥 + 组合
比较头疼的计数题. 我们发现,放置一个棋子会使得该棋子所在的1个行和1个列都只能放同种棋子. 定义状态 $f_{i,j,k}$ 表示目前已使用了 $i$ 个行,$j$ 个列,并放置了前 $k$ 种棋子的方案数. 假设当前枚举到的是第 $k$ 个棋子,该种棋子有 $num_{k}$ 个. 枚举 $d1,d2$ 表示安排这 $num_{k}$ 个棋子需要用 $d1$ 个行,$d2$ 个列. 可以将 $d1$ 个行和 $d2$ 个列并到一起,这就构成了一个 $d1\times d2$ 的矩形. 在这个…
bzoj2839 集合计数(容斥+组合)
集合计数 内存限制:128 MiB 时间限制:1000 ms 标准输入输出 题目描述 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得它们的交集的元素个数为K,求取法的方案数,答案模1000000007.(是质数喔~) 输入格式 一行两个整数N,K 输出格式 一行为答案. 样例 样例输入 3 2 样例输出 6 数据范围与提示 样例说明 假设原集合为{A,B,C} 则满足条件的方案为:{AB,ABC},{AC,ABC},{BC,AB…
bzoj4767两双手 容斥+组合
4767: 两双手 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 684 Solved: 208[Submit][Status][Discuss] Description 老W是个棋艺高超的棋手,他最喜欢的棋子是马,更具体地,他更加喜欢马所行走的方式.老W下棋时觉得无聊,便 决定加强马所行走的方式,更具体地,他有两双手,其中一双手能让马从(u,v)移动到(u+Ax,v+Ay)而另一双手能让 马从(u,v)移动到(u+Bx,v+By).小W看见老…
洛谷 P3266 - [JLOI2015]骗我呢(容斥原理+组合数学)
题面传送门 神仙题. 首先乍一看此题非常棘手,不过注意到有一个条件 \(0\le x_{i,j}\le m\),而整个矩阵恰好有 \(m\) 列,这就启发我们考虑将每个元素的上下界求出来,如果我们第一列全填 \(0\),其余每个数都恰好等于它左边的数加 \(1\),那么 \(x_{i,j}\) 刚好取到下界 \(j-1\):如果我们最后一列全填 \(m\),其余每个数都恰好等于它右边的数减 \(1\),那么 \(x_{i,j}\) 刚好取到上界 \(j\),因此对于任意一个第 \(j\) 列的元…