P4781 【模板】拉格朗日插值】的更多相关文章

题意 求 $ \displaystyle \sum_{i=1}^n i^k \ mod (1e9+7), n \leq 10^9, k \leq 10^6$. CF622F 分析 易知答案是一个 $k+1$ 次多项式,我们找 $k+2$ 个值代进去,然后拉格朗日插值. $n+1$ 组点值对 $(x_i, y_i)$,得到 $n$ 次多项式 $f$ 的拉格朗日插值公式为: $$f(x) = \sum_{i = 0}^n y_i\prod_{j\not =i} \frac{x-x_j}{x_i-x_…
P4781 [模板]拉格朗日插值 证明 :https://wenku.baidu.com/view/0f88088a172ded630b1cb6b4.html http://www.ebola.pro/article/notes/Lagrange #include<bits/stdc++.h> using namespace std; #define mod 998244353 #define ll long long #define maxn 2345 ll n,k,x[maxn],y[ma…
嘟嘟嘟 本来以为拉格朗日插值是一个很复杂的东西,今天学了一下才知道就是一个公式-- 我们都知道\(n\)个点\((x_i, y_i)\)可以确定唯一一个最高次为\(n - 1\)的多项式,那么现在我们已知这\(n\)个点,求这个多项式代入\(k\)时的值. 首先都能想到用高斯消元\(O(n ^3)\)求出多项式,然后代入\(k\). 但是这样有点慢,于是拉格朗日就找到了一种\(O(n ^2)\)的方法. 他不知怎么的想出了这么一个式子: \[f(k) = \sum_{i = 0} ^{n}{y_…
洛谷传送门 板题-注意一下求多个数的乘积的逆元不要一个个快速幂求逆元,那样很慢,时间复杂度就是O(n2log)O(n^2log)O(n2log).直接先乘起来最后求一次逆元就行了.时间复杂度为O(nlog+n2)=O(n2)O(nlog+n^2)=O(n^2)O(nlog+n2)=O(n2) 这样的拉格朗日插值是预处理O(n2)O(n^2)O(n2),插入O(n)O(n)O(n),查询O(n)O(n)O(n)的.使用的前提是可以求逆元. CODE #include<cstdio> #inclu…
[Luogu4781][模板]拉格朗日插值 题面 洛谷 题解 套个公式就好 #include<cstdio> #define ll long long #define MOD 998244353 #define MAX 2020 inline int read() { int x=0;bool t=false;char ch=getchar(); while((ch<'0'||ch>'9')&&ch!='-')ch=getchar(); if(ch=='-')t=t…
题意 题目描述 由小学知识可知,$n$个点$(x_i,y_i)$可以唯一地确定一个多项式 现在,给定$n$个点,请你确定这个多项式,并将$k$代入求值 求出的值对$998244353$取模 输入输出格式 输入格式: 第一行两个正整数$n,k$,含义如题 接下来$n$行,每行两个正整数$x_i,y_i$,含义如题 输出格式: 一个整数表示答案 输入输出样例 输入样例#1: 复制 3 100 1 4 2 9 3 16 输出样例#1: 复制 10201 输入样例#2: 复制 3 100 1 1 2 2…
模板题. 拉格朗日插值的精髓在于这个公式 $$f(x) = \sum_{i = 1}^{n}y_i\prod _{j \neq i}\frac{x - x_i}{x_j - x_i}$$ 其中$(x_i, y_i)$是给定的$n$个点值. 代入任何一个给定的点值坐标$x_k$,都会发现这个式子等于$y_k$成立,因为对于任何$i \neq k$,后面的系数都至少有一项为$0$,而当$i == k$的时候,后面那一项一定为$1$,这样子就可以保证代进去的点值一定被满足. 因为题目中要求直接代入$x…
[模板]拉格朗日插值 题目描述 由小学知识可知,$n$个点$(x_i,y_i)$可以唯一地确定一个多项式 现在,给定$n$个点,请你确定这个多项式,并将$k$代入求值 求出的值对$998244353$取模 说明 $n \leq 2000 \; \; \; x_i,y_i,k \leq 998244353$ 自为风月马前卒的分析 拉格朗日插值法 众所周知,\(n + 1\)个\(x\)坐标不同的点可以确定唯一的最高为\(n\)次的多项式.在算法竞赛中,我们常常会碰到一类题目,题目中直接或间接的给出…
如果打表发现某个数列: 差分有限次之后全为0 例如: 2017新疆乌鲁木齐ICPC现场赛D题 ,,,,,,,,,,…… [2018江苏南京ICPC现场赛也有这样的题目] 那么可以使用以下黑科技计算出第k(1e18)项(对质数取模) (原理: 拉格朗日插值) 预处理复杂度为线性, 每次计算复杂度为: O(传入项数个数)[同样也是线性] 以下代码为内测版, 出锅了fold不背锅, 欢迎指出bug ------------------------下面是模板代码---------------------…
拉格朗日插值 插值真惨 众所周知$k+1$个点可以确定一个$k$次多项式,那么插值就是通过点值还原多项式的过程. 设给出的$k+1$个点分别是$(x_0,y_0),(x_1,y_1),...,(x_k,y_k)$,那么xjb构造一下: 设函数$f_i(x)=\frac{\prod\limits_{j\neq i}(x-x_j)}{\prod\limits_{j\neq i}(x_i-x_j)}\times y_i$ 显然这个函数当$x=x_i$时值为$y_i$,$x=x_j(0\leq j\le…