题目链接:LOJ 题目描述:输入多项式的次数$n$,一个整数$m$和$f(0),f(1),f(2),\ldots,f(n)$,输出$f(m),f(m+1),f(m+2),\ldots,f(m+n)$ 数据范围:$1\leq n\leq 10^5,n<m\leq 10^8$ 一道披着拉格朗日插值模板的外衣的数论题... $$f(m+i)=\sum_{j=0}^nf(j)\dfrac{\prod_{k\not=j}(m+i-k)}{\prod_{k\not=j}(j-k)}$$ $$=\dfrac{…
LINK:P5667 拉格朗日插值2 给出了n个连续的取值的自变量的点值 求 f(m+1),f(m+2),...f(m+n). 如果我们直接把f这个函数给插值出来就变成了了多项式多点求值 这个难度好像有点大. 不妨 直接考虑拉格朗日插值. 设此时要求f(k) 那么则有 \(\sum_{i=0}^nf(i)\frac{\Pi_{i\neq j}(k-j)}{\Pi_{i\neq j} (i-j)}\) 可以化简一下 \(f(k)=\sum_{i=0}^nf(i)\frac{ \Pi_{i\neq…
正题 题目链接:https://www.ybtoj.com.cn/contest/115/problem/3 题目大意 两个长度为\(n+1\)的序列\(a,b\) \(a_i\)表示涂了\(i\)个格子的可以获得的价值. \(b_i\)表示恰好用\(i\)种颜色图最多\(n\)个格子可以获得的总价值. 给出序列\(b\),求序列\(a\) \(n\in[1,10^5]\),所有运算在\(\% 998244353\)意义下. 解题思路 定义\(c_i\)表示用\(i\)种颜色(不需要都用)时的价…
传送门 题意: 统计\(k\)元组个数\((a_1,a_2,\cdots,a_n),1\leq a_i\leq n\)使得\(gcd(a_1,a_2,\cdots,a_k,n)=1\). 定义\(f(n,k)\)为满足要求的\(k\)元组个数,现在要求出\(\sum_{i=1}^n f(i,k),1\leq n\leq 10^9,1\leq k\leq 1000\). 思路: 首先来化简一下式子,题目要求的就是: \[ \begin{aligned} &\sum_{i=1}^n\sum_{j=1…
传送门 题意: 求\[ \sum_{i=1}^{n}i^d[gcd(i,n)=1] \] 思路: 我们对上面的式子进行变换,有: \[ \begin{aligned} &\sum_{i=1}^{n}i[gcd(i,n)=1]\\ =&\sum_{i=1}^{n}i\sum_{x|gcd(i,n)}\mu (x)\\ =&\sum_{i=1}^n i\sum_{x|i,x|n}\mu(x)\\ =&\sum_{x|n}\mu(x)x^d\sum_{i=1}^{\frac{n}…
正题 题目链接:http://www.51nod.com/Challenge/Problem.html#problemId=1229 题目大意 给出\(n,k,r\)求 \[\sum_{i=1}^ni^kr^i \] \(1\leq T\leq 20,1\leq n,r\leq 10^{18},1\leq k\leq 2000\) 解题思路 如此明显的式子直接开推 \[S_k=\sum_{i=1}^ni^kr^i,rS_k=\sum_{i=2}^{n+1}(i-1)^kr^i \] \[(r-1…
The Sum of the k-th Powers There are well-known formulas: , , . Also mathematicians found similar formulas for higher degrees. Find the value of the sum modulo 109 + 7 (so you should find the remainder after dividing the answer by the value 109 + 7).…
常系数齐次线性递推 具体记在笔记本上了,以后可能补照片,这里稍微写一下,主要贴代码. 概述 形式: \[ h_n = a_1 h_{n-1}+a_2h_{n-2}+...+a_kh_{n-k} \] 矩阵乘法是\(O(k^3 \log n)\) 利用特征多项式可以做到\(O(k^2\log n)\) 特征多项式 特征值和特征向量 特征多项式 \[ f(\lambda) = \mid M - \lambda I\mid \] 是关于\(\lambda\)的\(n\)次多项式 根据\(Cayley-…
private static void QuictSort(int[] zu, int left, int right) { if (left < right) { ; ; ]; while (true) { while (i<right && zu[i]<mid) { i++; } while (j > left && zu[j] > mid) { j--; } if (i == j) { break; } int temp = zu[i];…
传送门 题面图片真是大到离谱-- 题目要求的是 \(\begin{align*}\sum\limits_{i=1}^N i^d[gcd(i,n) == 1] &= \sum\limits_{i=1}^N i^d \sum\limits_{p \mid gcd(i,n)} \mu(p) \\ &= \sum\limits_{p|n} \mu(p) p^d \sum\limits_{i=1}^{\frac{n}{p}} i^d\end{align*}\) 然后就不会做了qwq,后面的自然数次幂…