母函数,数学题,大概就是推公式吧。
承德汉堡:
1+x2+x4+⋯=11−x2
可乐:
1+x
鸡腿:
1+x+x2
蜜桃多:
x+x3+x5+⋯=x1−x2
鸡块:
1+x4+x8+⋯=11−x4
包子:
1+x+x2+x3
土豆片炒肉:
1+x
面包:
1+x3+x6+⋯=11−x3
然后全部乘起来
可得
x(1−x)4
是总的函数。
接下来就看它是什么数列的母函数就好了。
我们先对它求n阶导。
f(x)=x(1−x)4
莱布尼兹公式展开得
f(n)(x)=(n+3)!3!x(1−x)n+4+n(n+2)!3!(1−x)n+3
则用泰勒展开后
xn
项系数为
f(n)(0)n!
代入得:
gn=n(n+2)!3!n!=C3n+2=(n+2)(n+1)n6
最后,
gn
为答案。
#include<bits/stdc++.h>
using namespace std;
const int mod=10007,inv=1668;
char s[1005];
int x,ans;
int main()
{
scanf("%s",s);
for(int i=0;i<strlen(s);i++)x=(x*10+s[i]-'0')%mod;
ans=x;
ans=ans*(x+1)%mod;
ans=ans*(x+2)%mod;
ans=ans*inv%mod;
cout<<ans;
return 0;
}