蒟蒻的代码
#include<bits/stdc++.h>
using namespace std;
#define mod1091 int(1e9+1)
#define mod1071 int(1e7+1)
#define LL long long
LL x[2010],y[2010],n,k;
long long ppow(LL a,LL b,LL p=mod1091){
LL ret = 1;
while(b){
if(b & 1) ret = (ret * a) % p;
a = (a * a) % p;
b >>= 1;
}
return ret;
}
LL inv(LL a){
return ppow(a, mod1091-2)%mod1091;
}LL lglr(int a){
LL ans=0;
for(int i=1;i<=n;i++){
LL p=y[i]%mod1091,q=1;
for(int j=1;j<=n;j++){
if(i!=j){
p*=(a-x[j])%mod1091;
q*=(x[i]-x[j])%mod1091;
cout<<p<<" \n";
}
}
ans+=p*inv(q)%mod1091;
ans%=mod1091;
}return (ans+mod1091)%mod1091;
}
int main(){
int a;
cin>>n>>a;
for(int i=1;i<=n;i++){
cin>>x[i]>>y[i];
}cout<<lglr(a);
}