bzoj3028 食物
2018-01-23 14:01
190 查看
题目
母函数,数学题,大概就是推公式吧。
承德汉堡: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为答案。
母函数,数学题,大概就是推公式吧。
承德汉堡: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; }
相关文章推荐
- bzoj3028 食物(生成函数+逆元)
- BZOJ 3028 食物
- 【BZOJ 3028】 食物
- BZOJ3028: 食物
- 【BZOJ】3028: 食物
- BZOJ3028 食物 (生成函数)
- BZOJ 3028: 食物 [生成函数 隔板法 | 广义二项式定理]
- BZOJ3028 - 食物
- 【bzoj3028】食物 数论+生成函数
- BZOJ 3028 食物 组合数学
- BZOJ 3028: 食物 母函数
- BZOJ3028 食物(生成函数)
- bzoj3028 食物(生成函数+Lucas)
- BZOJ 3028 食物 ——生成函数
- BZOJ 3028 食物
- 【BZOJ 3028】 3028: 食物 (生成函数)
- BZOJ 3028: 食物 母函数
- bzoj 3028 食物
- BZOJ 3028 食物 生成函数
- 【BZOJ3028】食物 母函数