【数学】拉格朗日插值(luogu 4781/金牌导航 拉格朗日插值-1)
拉格朗日插值
luogu 4781
金牌导航 拉格朗日插值-1
题目大意
给出n个点,让你确定经过这n个点且不超过n-1次的方程,现在给出k,让你求出其函数值
样例#1
输入样例#1
3 100
1 4
2 9
3 16
输出样例#1
10201
样例#2
输入样例#2
3 100
1 1
2 2
3 3
输出样例#2
100
数据范围
1⩽n⩽2×103,1⩽xi,yi,k⩽9982443531\leqslant n\leqslant 2\times 10^3,1\leqslant x_i,y_i,k\leqslant 9982443531⩽n⩽2×103,1⩽xi,yi,k⩽998244353
解题思路
直接代入拉格朗日插值公式即可(如下)
f(k)=∑i=0nyi∏i≠jk−xjxi−xjf(k)=\sum_{i=0}^{n}y_i\prod_{i\neq j}\frac{k-x_j}{x_i-x_j}f(k)=i=0∑nyii=j∏xi−xjk−xj
代码
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define ll long long
#define N 2010
#define wyc 998244353
using namespace std;
ll n, m, k, g1, g2, ans, x[N], y[N];
ll Counting(ll x, ll y)
{ll s = 1;while(y){if (y&1) s = s * x % wyc;x = x * x % wyc;y >>= 1;}return s;
}
int main()
{scanf("%lld%lld", &n, &k);for (ll i = 1; i <= n; ++i)scanf("%lld%lld", &x[i], &y[i]);for (ll i = 1; i <= n; ++i){g1 = 1;g2 = 1;for (ll j = 1; j <= n; ++j)//计算公式if (i != j){g1 = g1 * (k - x[j]) % wyc;g2 = g2 * (x[i] - x[j]) % wyc;}ans = (ans + y[i] * g1 % wyc * Counting(g2, wyc - 2) % wyc + wyc) % wyc;}printf("%lld", ans);return 0;
}
【数学】拉格朗日插值(luogu 4781/金牌导航 拉格朗日插值-1)相关推荐
- 【DP】【树状数组】方伯伯的玉米田/优美玉米(luogu 3287/金牌导航 数据结构优化DP-5)
正题 luogu 3287 金牌导航 数据结构优化DP-5 题目大意 有n个玉米,给出高度,你可以选择一个区间,使这个区间的玉米高度+1,你可以进行k次这样的操作,查询你操作完后最长不下降子序列最大值 ...
- 【DP】【树状数组】免费馅饼(luogu 7302/金牌导航 数据结构优化DP-4)
正题 luogu 7302 金牌导航 数据结构优化DP-4 题目大意 在坐标轴上会出现n个金币,第i个金币tit_iti时在wiw_iwi出现(只出现一个单位时间),价值为sis_isi,当你t ...
- 【DP】【线段树】基站选址(luogu 2605/金牌导航 数据结构优化DP-2)
正题 luogu 2605 金牌导航 数据结构优化DP-2 题目大意 有若干个村庄在一条直线上,距离第一个村庄did_idi,在该村庄建立基站要花费cic_ici,如果在离该村不大于sis_isi ...
- 【LCT】城市旅行(luogu 4842/金牌导航 LCT-3)
正题 luogu 4842 金牌导航 LCT-3 题目大意 给你一棵树,让你进行一些操作: 1.删除一条边 2.连接一条边 3.给一条路径上的点加上x 4.给出一条路径,在该路径选取两个点,求这两个点 ...
- 【LCT】弹飞绵羊(luogu 3203/金牌导航 LCT-2)
正题 luogu 3203 金牌导航 LCT-2 题目大意 给你n个格子,当你在第i个格子时,可以往后跳aia_iai格,让你进行几下操作: 1.修改第i个数 2.查询在第i个格子跳多少下会跳出界 ...
- 【树链剖分】染色(luogu 2486/金牌导航 树链剖分-3)
正题 luogu 2486 金牌导航 树链剖分-3 题目大意 给你一棵树,让你进行以下操作: 1.把一条路径染上一个颜色 2.查询一条路径上有多少个颜色段 解题思路 用树链剖分把问题转化为链上问题 然 ...
- 【树链剖分】软件管理(luogu 2146/金牌导航 树链剖分-2)
正题 luogu 2146 金牌导航 树链剖分-2 题目大意 有若干软件,除了软件0,所有软件都依赖且只依赖于另外一个软件 当要删除一个软件时,所有依赖于该软件的软件都要删掉 当安装一个软件时,该软件 ...
- 【LCT】洞穴勘测(luogu 2147/金牌导航 LCT-1)
洞穴勘测 luogu 2147 金牌导航 LCT-1 题目大意 给你若干操作,有三种操作: 1.连接两个点 2.吧两个点之间的连边断掉(保证有这条边) 3.查询两个点之间是否连通 样例 #1 输入样例 ...
- 【高斯消元】球形空间产生器(luogu 4035/金牌导航 高斯消元-1)
球形空间产生器 luogu 4035 金牌导航 高斯消元-1 题目大意 给出n+1个n维的点,让你求一个点,使该点到所有点欧几里得距离相等 输入样例 2 0.0 0.0 -1.0 1.0 1.0 0. ...
最新文章
- 迁移至Android3.0遇到一些问题
- nacos mysql8.0修改
- 欢迎使用CSDN-markdown编辑器1111
- 获取iOS 设备上崩溃日志 (Crash Log)的方法
- 轻量高效的开源JavaScript插件和库 【转】
- python对比两个文件找出不同并显示_python difflib模块实现两个文件差异对比,并输出html格式。...
- stm32 PWM输入捕获
- html5 写json 文件,HTML5实现本地JSON文件的读写
- 数据结构笔记(三十四)二叉排序树的删除
- 任正非谈鸿蒙系统06 新闻,任正非首谈华为鸿蒙操作系统:很有可能比安卓和苹果还要快!...
- [转]C# 中的常用正则表达式总结
- 企业软件 - 创新尝试 - 用友 股份 产业链创新中心 - 产品流程会议问题解决 - 杨天政 - 原型产品发版标准 - 2014-3-13
- 01-unity下载与安装
- JSP Webshell 免杀
- ideaIU-2018.2.2 版本常用设置
- Returned object not currently part of this pool
- 【ThreeJs】(2)照相机 | 正交投影照相机 | 透视投影照相机
- 图解IFRS9 金融工具(13)实施时间及结语 [
- 一个数加100是完全平方数,再加168又是一个完全平方数
- Docker创建容器找不到网卡:Error response from daemon: network xxxx not found
热门文章
- vscode 快速调到定义处_vim技巧:在程序代码中快速跳转,在文件内跳转到变量定义处...
- cocoscreator editbox 只允许数字_《Cocos Creator游戏实战》做一个数字调节框
- win7美化_Potplayer64位美化版,无棒子的tv推送
- 历史版本_新版本爆料第弹丨英雄练习新去处,荣耀历史秀出来!
- leetcode455. 分发饼干
- 解决浏览器存储问题,不得不了解的cookie,localStorage和sessionStorage
- 卡尔曼_卡尔曼估计两步法
- [JavaWeb-JavaScript]JavaScript与html结合方式
- 数据结构与算法--B树原理及实现
- python面向对象语言_Python语言基础之——面向对象编程