「已注销」 2023-04-02 09:15 采纳率: 90.2%
浏览 28

C++拉格朗日插值法代码

洛谷原题:https://www.luogu.com.cn/problem/P4781
有几个问题,第28行为什么需要pow(P-2,b)%P?b不是作为拉格朗日插值法基函数的分母吗,这么写的意义是什么?
以及该如何修改才能通过样例?修改了一晚上无果,谢谢。

我的代码(改题解的代码改的):

#include<cstdio>
#include<iostream>
#include<algorithm>
#define P 998244353
using namespace std;

int n,k;
int a,b,ans;
int x[2005],y[2005];

int pow(int k,int n){
    int r=1;
    for(;k;k>>=1,n=n*n%P)if(k&1)r=r*n%P;
    return r;
}

int main(){
    cin>>n>>k;
    for(int i=1;i<=n;i++)cin>>x[i]>>y[i];
    for(int i=1;i<=n;i++){
        a=y[i]%P ;
        b=1;
        for(int j=1;j<=n;j++){
            if(i==j)continue;
            a=a*(k-x[j])%P;
            b=b*(x[i]-x[j])%P;
        }
        ans=(ans+a*pow(P-2,b)%P)%P;
    }
    cout<<(ans+P)%P;
    return 0;
}

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-04-02 18:17
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:
    • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7497625
    • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:C语言中的 pow 函数 使用方法及注意事项,和常见报错原因,且分享实战中的使用
    • 除此之外, 这篇博客: 《C语言函数速查》P开头的函数中的 09、pow 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

      函数名:pow
      功能:指数函数(x的y次方)
      用法:double pow(double x, double y);
      示例代码

      /*
      作者:AT阿宝哥
      日期:2016年9月18日
      愿景:参考官方资料,做最好的课程,成就更多职业人!
      邮箱:12264104@qq.com
      CSDN:https://blog.csdn.net/goldentec
      简书:https://www.jianshu.com/u/8a6075d7a2e0
      说明:
      
      注意:
          
      */
      #include <math.h>
      #include <stdio.h>
      
      int main(void)
      {
         double x = 2.0, y = 3.0;
      
         printf("%lf raised to %lf is %lf\n", x, y, pow(x, y));
         return 0;
      }
      
      


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 4月2日

悬赏问题

  • ¥15 求TYPCE母转母转接头24PIN线路板图
  • ¥100 国外网络搭建,有偿交流
  • ¥15 高价求中通快递查询接口
  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型