\(\mathscr{Description}\)

  Private link.

  给定 \(N,L,X,Y,K\),求选出 \(0\le a_1\le a_2\le\cdots a_{N-1}\le X<Y\le a_N\le L\),使得 \(\sum_{i=1}^{N-1}a_i>a_N\),且不存在某个 \(t\) 在 \(a_{1..N}\) 中出现超过 \(K\) 次的方案数。答案对 \((10^9+7)\) 取模。

  \(N\le8\),其他 \(\le10^9\)。

\(\mathscr{Solution}\)

  我走起来就是一个二元 GF:

\[\cdots=\prod_{i=0}^X\frac{1-y^{K+1}x^{i(K+1)}}{1-yx^i}.
\]

止步于此,大脑空空。惨痛地,我们认识到,尽量不要为了在“描述”时偷懒,毫无顾忌地引入二元。

  先从 \(K\) 次入手,为方便描述集合划分,钦定 \(a_{1..N}\) 乱序排列。那么,设某个值出现了 \(t\) 次,就应当有描述其方案数贡献的 EGF 中,\([z^t]G(t)=[t\le K]t!\cdot\frac{1}{t!}=[t\le K]\)。我们可以 \(\mathcal O(\operatorname{partition}(N))\) 枚举出现次数集合,却很难保证不同集合对应的值确实不同。为此,考虑一个被钦定大小为 \(t\) 的集合的容斥因子贡献,设其 EGF 为 \(F(z)\),就有 \(G=\exp F\Rightarrow F=\ln G\),\([z^t]F(z)\) 就是该集合的容斥系数。

  接着描述选出前 \(N-1\) 个数的过程。枚举 \(n-1\) 的划分 \(c_{1..m}\),有

\[M(z)=\prod_{i=1}^m \frac{1-z^{c_i(X+1)}}{1-z^{c_i}}.
\]

对于 \(s=\sum_{i=1}^{N-1}\in (Y,L]\),其对应 \(a_N\) 的方案数为 \(s-Y\)。这一部分的和为

\[\sum_{s=Y+1}^L(i-Y)[z^i]M(z)=([z^L]-[z^{Y}])\left(\frac{z}{1-z}M'(z)-\frac{Y}{1-z}M(z)\right).
\]

用 EI 求 \([z^n]P(z)/Q(z)\) 的科技(就是常系数齐次线性递推那个)可以算出来。对于 \(s>L\),其贡献为

\[([z^{\infty}]-[z^L])\frac{1}{1-z}M(z).
\]

令 \(z\rightarrow 1\) 洛一洛就能算前一项,后一项和前面类似。复杂度大概是 \(\mathcal O(\operatorname{partition}(n)\operatorname{polylog}(n)\log L)\)。

\(\mathscr{Code}\)

  呜……不想写。

  所以上面的式子可能都是错的,诶嘿。(

Solution -「LOCAL」菜的更多相关文章

  1. Solution -「LOCAL」二进制的世界

    \(\mathcal{Description}\)   OurOJ.   给定序列 \(\{a_n\}\) 和一个二元运算 \(\operatorname{op}\in\{\operatorname{ ...

  2. Solution -「LOCAL」大括号树

    \(\mathcal{Description}\)   OurTeam & OurOJ.   给定一棵 \(n\) 个顶点的树,每个顶点标有字符 ( 或 ).将从 \(u\) 到 \(v\) ...

  3. Solution -「LOCAL」过河

    \(\mathcal{Description}\)   一段坐标轴 \([0,L]\),从 \(0\) 出发,每次可以 \(+a\) 或 \(-b\),但不能越出 \([0,L]\).求可达的整点数. ...

  4. Solution -「LOCAL」Drainage System

    \(\mathcal{Description}\)   合并果子,初始果子的权值在 \(1\sim n\) 之间,权值为 \(i\) 的有 \(a_i\) 个.每次可以挑 \(x\in[L,R]\) ...

  5. Solution -「LOCAL」Burning Flowers

      灼之花好评,条条生日快乐(假装现在 8.15)! \(\mathcal{Description}\)   给定一棵以 \(1\) 为根的树,第 \(i\) 个结点有颜色 \(c_i\) 和光亮值 ...

  6. Solution -「LOCAL」画画图

    \(\mathcal{Description}\)   OurTeam.   给定一棵 \(n\) 个点的树形随机的带边权树,求所有含奇数条边的路径中位数之和.树形生成方式为随机取不连通两点连边直到全 ...

  7. Solution -「LOCAL」ZB 平衡树

    \(\mathcal{Description}\)   OurOJ.   维护一列二元组 \((a,b)\),给定初始 \(n\) 个元素,接下来 \(m\) 次操作: 在某个位置插入一个二元组: 翻 ...

  8. Solution -「LOCAL」舟游

    \(\mathcal{Description}\)   \(n\) 中卡牌,每种三张.对于一次 \(m\) 连抽,前 \(m-1\) 次抽到第 \(i\) 种的概率是 \(p_i\),第 \(m\) ...

  9. Solution -「LOCAL」充电

    \(\mathcal{Description}\)   给定 \(n,m,p\),求序列 \(\{a_n\}\) 的数量,满足 \((\forall i\in[1,n])(a_i\in[1,m])\l ...

  10. Solution -「LOCAL」「cov. 牛客多校 2020 第五场 C」Easy

    \(\mathcal{Description}\)   Link.(完全一致)   给定 \(n,m,k\),对于两个长度为 \(k\) 的满足 \(\left(\sum_{i=0}^ka_i=n\r ...

随机推荐

  1. Python请求接口传Null

    Python中没有Null,与之对应的是None. {"dog": "keji", "cat": None}

  2. 5.1 Vim及其安装

    通过前面的学习我们知道,Linux 系统中"一切皆文件",因此当我们在命令行下更改文件内容时,不可避免地要用到文本编辑器. 作为一名 Linux 初学者,你必须熟练掌握 Linux ...

  3. 基于Java+SpringBoot+Mysql实现的快递柜寄取快递系统功能实现四

    一.前言介绍: 1.1 项目摘要 随着电子商务的迅猛发展和城市化进程的加快,快递业务量呈现出爆炸式增长的趋势.传统的快递寄取方式,如人工配送和定点领取,已经无法满足现代社会的快速.便捷需求.这些问题不 ...

  4. manim边学边做--立方体和棱柱体

    本篇介绍Manim中创建三维立体的两个常用对象:Cube和Prism. Cube在制作动画时,可以用于展示立体几何中的立方体概念,或者通过旋转.缩放等动画效果来帮助理解三维空间中的几何变换. Pris ...

  5. 高性能的Reactor和Proactor模式学习

    0.引言 在上一篇的笔记中,我们学习了操作系统提供的高效I/O管理技术,主要用于解决服务器在高并发场景下的资源浪费和瓶颈问题.但是在实际的代码编写中,要是我们都全部调用底层的I/O多路复用接口来编写网 ...

  6. 【Spring】IOC核心源码学习(二):容器初始化过程

    接上文 啃啃老菜: Spring IOC核心源码学习(一) ,本文将以 ClassPathXmlApplicationContext 这个容器的实现作为基础,学习容器的初始化过程. ClassPath ...

  7. antlr的使用

    我从以下几个问题入手介绍ANTLR的相关知识. 1 ANTLR是什么? ANTLR, ANother Tool for Language Recognition, 是一个可以接受含有语法描述的语言描述 ...

  8. golang之go-spew

    github: https://github.com/davecgh/go-spew 我们在使用Golang(Go语言)开发的过程中,会通过经常通过调试的方式查找问题的原因,解决问题,尤其是当遇到一个 ...

  9. Mac下的终端高亮显示

    默认安装之后Mac下的终端都是一色的黑白,所以需要做一番改造 推荐安装Linux使用的GNU Coreutils替换Mac的ls命令,因为: Coreutils提供了配置工具,定义颜色代码更加方便: ...

  10. 使用LOGSTASH 将数据导入到ES

    logstash 执行过程 input -->filter -->output filter 可以对数据进行处理 输出插件 codec plugin 使用脚本将数据导入到ES input ...