巴特西
首页
Python
Java
PHP
IOS
Andorid
NodeJS
JavaScript
HTML5
【XSY3147】子集计数 DFT
【XSY3147】子集计数 DFT 组合数学
题目大意 给定一个集合 \(\{1,2,\ldots,n\}\),要求你从中选出 \(m\) 个数,且这 \(m\) 个数的和是 \(k\).问方案数 \(\bmod 998244353\) \(0\leq k<n<998244353,m\leq n\) 题解 先不考虑选的数的个数的限制. 显然答案的 OGF 为 \[ F(x)=\prod_{i=0}^{n-1}(1+x^i) \] 考虑答案的式子 \[ \begin{align} ans&=\frac{1}{n}\sum_{i=0}
有标号DAG计数 [容斥原理 子集反演 组合数学 fft]
有标号DAG计数 题目在COGS上 [HZOI 2015]有标号的DAG计数 I [HZOI 2015] 有标号的DAG计数 II [HZOI 2015]有标号的DAG计数 III I 求n个点的DAG(可以不连通)的个数.\(n \le 5000\) 2013年王迪的论文很详细了 感觉想法很神,自己怎么想到啊? 首先要注意到DAG中一类特殊的点:入度为0的点.以这些点来分类统计 先是一种\(O(N^3)\)的dp, \(d(i,j)\) i个点j个入度为0,转移枚举去掉j个后入度为0点的个数,
Comet Contest#11 F arewell(DAG计数+FWT子集卷积)
传送门. 题解: 4月YY集训时做过DAG计数,和这个基本上是一样的,但是当时好像直接暴力子集卷积,不然我省选时不至于不会,这个就多了个边不选的概率和子集卷积. DAG计数是个套路来的,利用的是DAG中入度为0的点. 设\(f[S]\)表示只考虑s里的点的诱导子图形成DAG的方案数. 枚举一个\(T|S~\and~T=\empty\),这个T就是新的图中度数为0的点,首先它们之间要没有边,然后\(T\)和\(S\)间的边要么没有,要么都由\(T->S\),记\(cnt[S]\)表示S里的边数,这
【BZOJ4475】子集选取(计数)
题意: 思路: #include<cstdio> #include<cstdlib> #include<iostream> #include<algorithm> #include<cstring> #define MOD 1000000007 typedef long long LL; using namespace std; LL n,k,ans; LL pow(LL x,LL y) { LL s=; LL t=x; while(y) { )
【BZOJ-2839】集合计数 容斥原理 + 线性推逆元 + 排列组合
2839: 集合计数 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 229 Solved: 120[Submit][Status][Discuss] Description 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得 它们的交集的元素个数为K,求取法的方案数,答案模1000000007.(是质数喔~) Input 一行两个整数N,K Output 一行为答案. Sample Inp
[HDOJ4609]3-idiots(FFT,计数)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4609 题意:n个数,问取三个数可以构成三角形的组合数. FFT预处理出两个数的组合情况,然后枚举第三个数,计数去重. #include <bits/stdc++.h> using namespace std; const double PI = acos(-1.0); //复数结构体 typedef struct Complex { double r,i; Complex(double _r =
大数据计算:如何仅用1.5KB内存为十亿对象计数
大数据计算:如何仅用1.5KB内存为十亿对象计数 Big Data Counting: How To Count A Billion Distinct Objects Using Only 1.5K This is a guest post by Matt Abrams (@abramsm), from Clearspring, discussing how they are able to accurately estimate the cardinality of sets with bi
[DP之计数DP]
其实说实在 我在写这篇博客的时候 才刚刚草了一道这样类型的题 之前几乎没有接触过 接触过也是平时比赛的 没有系统的做过 可以说0基础 我所理解的计数dp就是想办法去达到它要的目的 而且一定要非常劲非常快 都是一个很小的数然后有很多种接下来的方案使得这个数一下子变很大 计数DP常用的有:组合和排列 然后要抽象的想 还有容斥定理(这的话经常考而且很难几乎不会做) 还有用前缀之类的进行优化转移 找到规律就可以搞了 慢慢给出例题慢慢说慢慢学 因为这个要不全AC要不全WA [JLOI2013]地形生成 计
康复计划#5 Matrix-Tree定理(生成树计数)的另类证明和简单拓展
本篇口胡写给我自己这样的什么都乱证一通的口胡选手 以及那些刚学Matrix-Tree,大致理解了常见的证明但还想看看有什么简单拓展的人- 大概讲一下我自己对Matrix-Tree定理的一些理解.常见版本的证明.我自己的证明,以及简单的一些应用(比如推广到有向图.推广到生成树边权的乘积和什么的,非常基础). 应该看到这里的人都知道Matrix-Tree定理是干什么的吧-就是统计一个无向图的生成树个数,表示成一个行列式. 1.前置定义及性质 首先是Matrix-Tree定理相关的定义:对于一个无向图
hdu 4609 3-idiots [fft 生成函数 计数]
hdu 4609 3-idiots 题意: 给出\(A_i\),问随机选择一个三元子集,选择的数字构成三角形的三边长的概率. 一开始一直想直接做.... 先生成函数求选两个的方案(注意要减去两次选择同一个的,然后/2),然后统计三角形个数. 枚举三角形最长边,求\(i+j>k,i<k,j<k\)的方案数.后两个条件减去不合法的. 不合法很好统计 \(i \ge k \rightarrow i+j > k\) #include <iostream> #include &l
BZOJ 4555: [Tjoi2016&;Heoi2016]求和 [分治FFT 组合计数 | 多项式求逆]
4555: [Tjoi2016&Heoi2016]求和 题意:求\[ \sum_{i=0}^n \sum_{j=0}^i S(i,j)\cdot 2^j\cdot j! \\ S是第二类斯特林数 \] 首先你要把这个组合计数肝出来,于是我去翻了一波<组合数学> 用斯特林数容斥原理推导那个式子可以直接出卷积形式,见下一篇,本篇是分治fft做法 组合计数 斯特林数 \(S(n,i)\)表示将n个不同元素划分成i个相同集合非空的方案数 Bell数 \(B(n)=\sum\limits_{i=
BZOJ 4555: [Tjoi2016&;Heoi2016]求和 [FFT 组合计数 容斥原理]
4555: [Tjoi2016&Heoi2016]求和 题意:求\[ \sum_{i=0}^n \sum_{j=0}^i S(i,j)\cdot 2^j\cdot j! \\ S是第二类斯特林数 \] 首先你要把这个组合计数肝出来,于是我去翻了一波<组合数学> 分治fft做法见上一篇,本篇是容斥原理+fft做法 组合计数 斯特林数 \(S(n,i)\)表示将n个不同元素划分成i个相同集合非空的方案数 考虑集合不相同情况\(S'(n,i)=S(n,i)*i!\),我们用容斥原理推♂倒她
BZOJ 2839: 集合计数 [容斥原理 组合]
2839: 集合计数 题意:n个元素的集合,选出若干子集使得交集大小为k,求方案数 先选出k个\(\binom{n}{k}\),剩下选出一些集合交集为空集 考虑容斥 \[ 交集为\emptyset = 任意选的方案数-交集\ge 1 的方案数+交集\ge 2的方案数-... \] 交集\(\ge i\)就是说先选出i个元素在交集里,剩下的元素的集合任选 那么就是 \[ \sum_{i=0}^n \binom{n}{i}(2^{2^{n-i}}-1) \] 组合数直接推阶乘和逆元 后面的\(2^{
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
bzoj2839 集合计数(容斥)
2839: 集合计数 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 883 Solved: 490[Submit][Status][Discuss] Description 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得 它们的交集的元素个数为K,求取法的方案数,答案模1000000007.(是质数喔~) Input 一行两个整数N,K Output 一行为答案. Sample Inp
BZOJ 2839: 集合计数 解题报告
BZOJ 2839: 集合计数 Description 一个有\(N\)个元素的集合有\(2^N\)个不同子集(包含空集),现在要在这\(2^N\)个集合中取出若干集合(至少一个),使得 它们的交集的元素个数为\(K\),求取法的方案数,答案模\(1000000007\). Input 一行两个整数\(N,K\) Output 一行为答案. HINK 对于\(100\%\)的数据,\(1≤N≤1000000,0≤K≤N\): 设交集拥有元素集合\(S\)的取法方案数为\(f(S)\),有 \[
bzoj2839 集合计数
F.A.Qs Home Discuss ProblemSet Status Ranklist Contest 入门OJ ModifyUser Logout 捐赠本站 2839: 集合计数 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 854 Solved: 470 Description 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得 它们的交集的元素个数为K,求取法的方案数,答案模
AtCoder Regular Contest 082 (ARC082) E - ConvexScore 计算几何 计数
原文链接http://www.cnblogs.com/zhouzhendong/p/8934254.html 题目传送门 - ARC082 E 题意 给定二维平面上的$n$个点,定义全集为那$n$个点,求所有满足条件的子集的$Score$和. 条件:要求子集中的点能构成凸多边形. $Score$的定义:记子集大小为$|s|$,记子集中的点围成的凸多边形中的点的个数(包括端点和边界)为$n$,则$score=2^{n-|s|}$. 答案对于$998244353$取模. $n\leq 200,0\l
【BZOJ2839】集合计数&;&;【BZOJ3622】已经没有什么好害怕的了
再谈容斥原理来两道套路几乎一致的题目[BZOJ2839]集合计数Description一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得它们的交集的元素个数为K,求取法的方案数,答案模1000000007.(是质数喔~)首先我们发现他要求取出的集合是不同的所以通常的套路是容斥令一个东西在保证取出的集合是不同的情况下求出那个时候的答案因为如果按照集合重复来容斥就比较复杂我们考虑交集至少为i的方案数有f(i)=C(n,i)*(2^(2^(n-i
【做题】agc008f - Black Radius——计数&;讨论&;思维
原文链接 https://www.cnblogs.com/cly-none/p/9794411.html \[ \newcommand{\stif}[2]{\left[ \begin{matrix} #1 \\ #2 \end{matrix} \right]} \newcommand{\stis}[2]{\left\{ \begin{matrix} #1 \\ #2 \end{matrix} \right\}} \newcommand{\comb}[2]{\left( \begin{matrix
热门专题
log4net 保存日志到MySql
基于opencv的车道线检测总结与改进
python标准库RE模块源码剖析
wordcloud 中文词云分析排除单个字符
iOS App 启动
vue 实现汇率转换
fiddler打开后电脑无法上网
百度云可以同步keepass数据
后台传递所有数据给vue做前端分页
oracle 解密 工具箱的输入长度无效
Android 内核下载
linux 写入延迟导致 read only
Vue-elementui 二级联动
esxi6.7 多路径策略
UNIAPP消息推送
IEEE单精度的最大最小精度
gtk3 cmakelist怎么写
andriod 遍历raw下的资源
mysql命令行执行脚本
jtag 烧录字库到flash