LG8768 题解
题意
求长度为 \(n\) 的序列 \(a\) 的个数对 \(998244353\) 取模的结果,其中 \(a\) 满足:
- \(a_1=w\)
- \(a_{i-1}+L\le a_i\le a_{i-1}+R\ (\forall i\in[2,n])\)
- \(a_y=za_x\)
\(1\le n\le 5\times 10^5,1\le w\le 10^9,0\le L\le R\le 40,1\le x<y\le n,0\le z\le 10^9\)。
题解
学到一个技巧,来记一下。
随便推一下,就是求 \(\text{OGF}\) \((\sum\limits_{i=0}^{R-L}x^i)^n\) 的各项系数。其长度为 \(2\times10^7\) 级别,不能 \(O(n\log n)\)。这里需要一种 \(O(n)\) 解法。
我们设 \(F(x)=(\sum\limits_{i=0}^{k-1}x^i)^n=(\frac{x^k-1}{x-1})^n\)。这里主要利用后面那个等式。
F'(x)&=\left(\left(\frac{x^k-1}{x-1}\right)^n\right)'\\
&=n\left(\frac{x^k-1}{x-1}\right)^{n-1}\cdot\frac{kx^k-kx^{k-1}-x^k+1}{(x-1)^2}\\
&=nF(x)\cdot\frac{kx^k-kx^{k-1}-x^k+1}{(x-1)(x^k-1)}\\
(x^{k+1}-x^k-x+1)F'(x)&=(nkx^k-nkx^{k-1}-nx^k+n)F(x)
\end{aligned}
\]
左右提取 \([x^m]\) 即可得到线性递推式。
此题技巧在于对一个 \(\text{OGF}\) 的两种表达形式求导。
LG8768 题解的更多相关文章
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- noip2016十连测题解
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
- BZOJ-2561-最小生成树 题解(最小割)
2561: 最小生成树(题解) Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1628 Solved: 786 传送门:http://www.lyd ...
- Codeforces Round #353 (Div. 2) ABCDE 题解 python
Problems # Name A Infinite Sequence standard input/output 1 s, 256 MB x3509 B Restoring P ...
- 哈尔滨理工大学ACM全国邀请赛(网络同步赛)题解
题目链接 提交连接:http://acm-software.hrbust.edu.cn/problemset.php?page=5 1470-1482 只做出来四道比较水的题目,还需要加强中等题的训练 ...
- 2016ACM青岛区域赛题解
A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Jav ...
- poj1399 hoj1037 Direct Visibility 题解 (宽搜)
http://poj.org/problem?id=1399 http://acm.hit.edu.cn/hoj/problem/view?id=1037 题意: 在一个最多200*200的minec ...
- 网络流n题 题解
学会了网络流,就经常闲的没事儿刷网络流--于是乎来一发题解. 1. COGS2093 花园的守护之神 题意:给定一个带权无向图,问至少删除多少条边才能使得s-t最短路的长度变长. 用Dijkstra或 ...
- CF100965C题解..
求方程 \[ \begin{array}\\ \sum_{i=1}^n x_i & \equiv & a_1 \pmod{p} \\ \sum_{i=1}^n x_i^2 & ...
- JSOI2016R3 瞎BB题解
题意请看absi大爷的blog http://absi2011.is-programmer.com/posts/200920.html http://absi2011.is-programmer.co ...
随机推荐
- “喜提”一个P2级故障—CMSGC太频繁,你知道这是什么鬼?
大家好,我是陶朱公Boy. 背景 今天跟大家分享一个前几天在线上碰到的一个GC故障- "CMSGC太频繁". 不知道大家看到这条告警内容后,是什么感触?我当时是一脸懵逼的,一万个为 ...
- [python] 向量检索库Faiss使用指北
Faiss是一个由facebook开发以用于高效相似性搜索和密集向量聚类的库.它能够在任意大小的向量集中进行搜索.它还包含用于评估和参数调整的支持代码.Faiss是用C++编写的,带有Python的完 ...
- s2-007
漏洞名称 S2-007 CVE-2012-0838 远程代码执行 利用条件 Struts 2.0.0 - Struts 2.2.3 漏洞原理 age来自于用户输入,传递一个非整数给id导致错误,str ...
- .Net6在Docker环境下操作Selenium.Chrome的那些坑
.Net6中想实现对某个网址截屏,可通过Selenium模拟访问网址并实现截图. 实现 安装Nuget包 <PackageReference Include="Selenium.Chr ...
- 深入Typescript--03-Typescript中的类(努力加餐饭)
Typescript中的类 一.TS中定义类 class Pointer{ x!:number; // 实例上的属性必须先声明 y!:number; constructor(x:number,y?:n ...
- 解决安装node-sass报错的方法
1.下载源码放到本地搞~~ 适合内网开发的苦孩子们~~~ 先进入https://github.com/sass/node-sass/releases下载自己需要的包 可以点击tags然后找到自己需要的 ...
- 半个前端新手入门Electron的过程
前言 先说几句废话,本人是一名 web 后端开发,主语言是 java,在学 Electron 之前,只会一点点 HTML和 JavaScript.本文讲的也是我学习 Electron 的过程,而非教程 ...
- Java入门与进阶P-5.3+P-5.4
数组的元素 有效的下标 最小的下标是0,最大的下标是数组的元素个数-1 可是编译器不会检查看你是否用了有效的下标 但是如果运行的时候出现了无效的下标,可能会导致程序终止 定义数组变量 元素个数必须是整 ...
- 构造方法-JavaBean
构造方法 当一个对象被创建时候,构造方法用来初始化该对象,给对象的成员变量赋初始值. 小贴士:无论你与否自定义构造方法,所有的类都有构造方法,因为Java自动提供了一个无参数构造方法, 一旦自己定义了 ...
- 01 LED点灯
新建一个STM32CubeIDE 新工程 选择自己的芯片型号,我的是STM32F103RCT6 选择工程保存位置,不能有中文路径,会报错 选择下载方式.一定要选,不然下次下载有问题 选择时钟来源,我的 ...