【JZOJ5180】【NOI2017模拟6.29】呵呵
来源:互联网 发布:怎么看删除淘宝的评价 编辑:程序博客网 时间:2024/06/07 13:22
题目
分析
套上prufer序列,
对于一颗n个节点度数分别为
所以答案为
使
考虑处理
对于多项式
我们考虑
//后面的内容我还不太理解,只能大概讲讲。如果讲错了,请大佬指出一下错误
现在解释一下最后一条式子
根据指数型生成函数的定义
当
那么,
那么当
即为
#include <cmath>#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <algorithm>#include <queue>#include <map>const int maxlongint=2147483647;const long long mo=1e9+7;const int N=2005;using namespace std;long long w[N],ans,f[N],sum,jc[N],ww;int n;long long mi(long long x,int y){ long long s=1; for(;y;x=x*x%mo,y>>=1) s=y&1?s*x%mo:s; return s;}int main(){ scanf("%d",&n); f[0]=jc[0]=ww=1; for(int i=1;i<=n;i++) { scanf("%lld",&w[i]),sum=(sum+w[i])%mo,jc[i]=jc[i-1]*i%mo,ww=ww*w[i]%mo; for(int j=i;j>=1;j--) f[j]=(f[j]+f[j-1]*w[i]%mo)%mo; } for(int k=0;k<=n-2;k++) ans=(ans+f[k]*mi(sum,n-2-k)%mo*mi(jc[n-2-k],mo-2)%mo)%mo; printf("%lld",ans*ww%mo*jc[n-2]%mo);}
阅读全文
1 0
- 【JZOJ5180】【NOI2017模拟6.29】呵呵
- 【NOI2017模拟6.29】呵呵
- NOI2017模拟3.1 总结
- NOI2017模拟3.8 总结
- 【NOI2017模拟3.30】原谅
- 【NOI2017模拟4.2】查询
- 【NOI2017模拟4.2】押韵
- 【NOI2017模拟6.26】A
- 【NOI2017模拟6.2】字符串
- 【JZOJ5037】【NOI2017模拟3.30】轮回
- [JZOJ100003]【NOI2017模拟.4.1】 Tree
- 【JZOJ5036】【NOI2017模拟3.30】原谅
- 【JZOJ5037】【NOI2017模拟3.30】轮回
- 【JZOJ5040】【NOI2017模拟4.2】押韵
- 【JZOJ5039】【NOI2017模拟4.2】查询
- 【JZOJ100003】【NOI2017模拟.4.1】 Tree
- 【JZOJ100004】【NOI2017模拟.4.1】 Dice
- [JZOJ100004]【NOI2017模拟.4.1】 Dice
- loj #2053. 「HNOI2016」大数(莫队)
- Object类的方法
- 关于格式化控制台输出,printf和println
- ahttp:基于协程的 Http 请求库
- POJ3469:Dual Core CPU
- 【JZOJ5180】【NOI2017模拟6.29】呵呵
- QT软件发布
- Unable to resolve module `react-native/Libraries/EventEmitter/EventEmitter`
- hdu2034
- python的闭包,装饰器,@
- Design Pattern 3: Factory Method && Abstract Factory Pattern
- Luogu 3370(hash)
- 三轴加速度传感器角度值转换原理
- Chrome浏览器安装路径修改方法