Solution -「LOCAL」菜
\(\mathscr{Description}\)
给定 \(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:
\]
止步于此,大脑空空。惨痛地,我们认识到,尽量不要为了在“描述”时偷懒,毫无顾忌地引入二元。
先从 \(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}\),有
\]
对于 \(s=\sum_{i=1}^{N-1}\in (Y,L]\),其对应 \(a_N\) 的方案数为 \(s-Y\)。这一部分的和为
\]
用 EI 求 \([z^n]P(z)/Q(z)\) 的科技(就是常系数齐次线性递推那个)可以算出来。对于 \(s>L\),其贡献为
\]
令 \(z\rightarrow 1\) 洛一洛就能算前一项,后一项和前面类似。复杂度大概是 \(\mathcal O(\operatorname{partition}(n)\operatorname{polylog}(n)\log L)\)。
\(\mathscr{Code}\)
呜……不想写。
所以上面的式子可能都是错的,诶嘿。(
Solution -「LOCAL」菜的更多相关文章
- Solution -「LOCAL」二进制的世界
\(\mathcal{Description}\) OurOJ. 给定序列 \(\{a_n\}\) 和一个二元运算 \(\operatorname{op}\in\{\operatorname{ ...
- Solution -「LOCAL」大括号树
\(\mathcal{Description}\) OurTeam & OurOJ. 给定一棵 \(n\) 个顶点的树,每个顶点标有字符 ( 或 ).将从 \(u\) 到 \(v\) ...
- Solution -「LOCAL」过河
\(\mathcal{Description}\) 一段坐标轴 \([0,L]\),从 \(0\) 出发,每次可以 \(+a\) 或 \(-b\),但不能越出 \([0,L]\).求可达的整点数. ...
- Solution -「LOCAL」Drainage System
\(\mathcal{Description}\) 合并果子,初始果子的权值在 \(1\sim n\) 之间,权值为 \(i\) 的有 \(a_i\) 个.每次可以挑 \(x\in[L,R]\) ...
- Solution -「LOCAL」Burning Flowers
灼之花好评,条条生日快乐(假装现在 8.15)! \(\mathcal{Description}\) 给定一棵以 \(1\) 为根的树,第 \(i\) 个结点有颜色 \(c_i\) 和光亮值 ...
- Solution -「LOCAL」画画图
\(\mathcal{Description}\) OurTeam. 给定一棵 \(n\) 个点的树形随机的带边权树,求所有含奇数条边的路径中位数之和.树形生成方式为随机取不连通两点连边直到全 ...
- Solution -「LOCAL」ZB 平衡树
\(\mathcal{Description}\) OurOJ. 维护一列二元组 \((a,b)\),给定初始 \(n\) 个元素,接下来 \(m\) 次操作: 在某个位置插入一个二元组: 翻 ...
- Solution -「LOCAL」舟游
\(\mathcal{Description}\) \(n\) 中卡牌,每种三张.对于一次 \(m\) 连抽,前 \(m-1\) 次抽到第 \(i\) 种的概率是 \(p_i\),第 \(m\) ...
- Solution -「LOCAL」充电
\(\mathcal{Description}\) 给定 \(n,m,p\),求序列 \(\{a_n\}\) 的数量,满足 \((\forall i\in[1,n])(a_i\in[1,m])\l ...
- Solution -「LOCAL」「cov. 牛客多校 2020 第五场 C」Easy
\(\mathcal{Description}\) Link.(完全一致) 给定 \(n,m,k\),对于两个长度为 \(k\) 的满足 \(\left(\sum_{i=0}^ka_i=n\r ...
随机推荐
- uni-app 监听返回按钮
前置条件: 开发环境:windows 开发框架:uni-app , H5+,nativeJS 编辑器:HbuilderX 2.8.13 4. 兼容版本:安卓,IOS已作测试 进入正题: 文档地址uni ...
- 工作中的技术总结_JQuery_20210825
工作中的技术总结_JQuery_20210825 JQuery此前接触不多,所以先把此次接触的一些基本操作 1.DOM节点的取值或者赋值: 语法: $(selector).val(value) 参数 ...
- awk 处理 Git 提交信息生成 Release Note
发布软件时通常都会写 Release Note,但每次从头手打也有点累,可以考虑从 Git 的提交历史中自动生成. Git 提交信息一般是三段式结构,段落之间使用空行隔开: <subject&g ...
- 掌控物体运动艺术:图扑 Easing 函数实践应用
现如今,前端开发除了构建功能性的网站和应用程序外,还需要创建具有吸引力且尤为流畅交互的用户界面,其中动画技术在其中发挥着至关重要的作用.在数字孪生领域,动画的应用显得尤为重要.数字孪生技术通过精确模拟 ...
- Linux 安装idea
前置 Idea2020 Xftp6 步骤 将压缩包通过Xftp6上传到/opt/idea 解压 启动/bin目录下的./idea.sh,配置jdk 此步骤需要在虚拟机的图形界面执行 编写hello.j ...
- 关于C++当中的“模板函数”
本人C++草鸟,在工作当中遇到了这个问题,就简单做个记录.
- Python如何获取request response body
在Python中,我们可以使用多个库来发送HTTP请求并获取响应体(response body).其中,最常用的库之一是 requests.这个库提供了简单易用的接口来发送HTTP请求,并可以方便地获 ...
- 卡特兰数 Catalan 数列
卡特兰数 Catalan 数列 引入 有一个无限大的栈,进栈的顺序为 \(1,2,\cdots,n\),求有多少种不同的出栈序列. 设 \(h[n]\) 为 \(n\) 个数的出栈序列方案数. 可以这 ...
- VTable-Gantt:功能强大、性能优异的开源甘特图组件
甘特图的基本概念 在项目管理中,甘特图是一种常用的工具,用于展示项目任务的时间安排和进度. 我们将甘特图拆分成以下几个部分: 左侧任务列表:显示项目的任务列表,通常在图的左侧. 顶部时间轴:显示项目的 ...
- Python通过requests模块处理form-data请求格式
1.安装 requests_toolbelt 模块,引入该模块下的 MultipartEncoder 2.在 请求体 中使用该模块函数,请求头中增加对应参数值 from requests_toolbe ...