当前位置: 首页 > news >正文

海盐网站建设wordpress 不收录

海盐网站建设,wordpress 不收录,网站建设带数据库模板下载,wordpress 注册页修改传送门 题意#xff1a;求NNN个点的带标号无向连通简单图的个数。 N≤130000N \leq 130000N≤130000 这个问题的主要矛盾在于连通 这个并不好表示#xff0c;但可以用这个表示出不要求连通的方案数 由于带标号#xff0c;先构造答案的EGF f(x)∑i0∞aii!xif(x)\sum_{i0}…传送门 题意求NNN个点的带标号无向连通简单图的个数。 N≤130000N \leq 130000N≤130000 这个问题的主要矛盾在于连通 这个并不好表示但可以用这个表示出不要求连通的方案数 由于带标号先构造答案的EGF f(x)∑i0∞aii!xif(x)\sum_{i0}^\infin\frac{a_i}{i!}x^if(x)∑i0∞​i!ai​​xi,其中aia_iai​表示iii个点的带标号无向连通简单图的个数。 设EGF g(x)∑i0∞bii!xig(x)\sum_{i0}^\infin\frac{b_i}{i!}x^ig(x)∑i0∞​i!bi​​xi表示iii个点的带标号无向连通简单图的个数。 显然bi2Ci2b_i2^{C_i^2}bi​2Ci2​ 然后可以用fff表示ggg:枚举连通块的数量求幂,除以顺序i!i!i!(000是来凑数的) g(x)∑i0∞fi(x)i!g(x)\sum_{i0}^\infin\frac{f^i(x)}{i!}g(x)i0∑∞​i!fi(x)​ 这是什么exe^xex的泰勒展开式啊泰勒展开在x00x_00x0​0时称麦克劳林级数 g(x)ef(x)g(x)e^{f(x)}g(x)ef(x) f(x)ln(g(x))f(x)ln(g(x))f(x)ln(g(x)) 求个lnlnln即可 复杂度O(nlogn)O(nlogn)O(nlogn) #include iostream #include cstdio #include cstring #include cctype #define MAXN 262144 using namespace std; const int MOD1004535809; typedef long long ll; int fac[MAXN],finv[MAXN]; inline int qpow(int a,int p) {int ans1;while (p){if (p1) ans(ll)ans*a%MOD;a(ll)a*a%MOD;p1;}return ans; } #define inv(x) qpow(x,MOD-2) inline int add(const int x,const int y){return xyMOD? xy-MOD:xy;} inline int dec(const int x,const int y){return xy? x-yMOD:x-y;} int r[MAXN],rt[2][22]; inline void init(const int l){for (int i0;i(1l);i) r[i](r[i1]1)|((i1)(l-1));} void NTT(int* a,int l,int type) {int lim1l;for (int i0;ilim;i) if (ir[i]) swap(a[i],a[r[i]]);for (int L0;Ll;L){int mid1L,lenmid1;int Wnrt[type][L1];for (int s0;slim;slen)for (int k0,w1;kmid;k,w(ll)w*Wn%MOD){int xa[sk],y(ll)w*a[smidk]%MOD;a[sk]add(x,y);a[smidk]dec(x,y);}}if (type){int tinv(lim);for (int i0;ilim;i) a[i](ll)a[i]*t%MOD;} } void getinv(int* A,int* B,int n) {static int t[MAXN];if (n1) return (void)(*Binv(*A));getinv(A,B,(n1)1);int l0;while ((1l)(n1)) l;for (int i0;in;i) t[i]A[i];for (int in;i(1l);i) t[i]B[i]0;init(l);NTT(t,l,0);NTT(B,l,0);for (int i0;i(1l);i) B[i](ll)B[i]*(MOD2-(ll)t[i]*B[i]%MOD)%MOD;NTT(B,l,1);for (int in;i(1l);i) B[i]0; } inline void deriv(int* A,int* B,int n) {for (int i0;in-1;i) B[i](ll)A[i1]*(i1)%MOD;B[n-1]0; } inline void integ(int* A,int* B,int n) {for (int i1;in;i) B[i](ll)A[i-1]*finv[i]%MOD*fac[i-1]%MOD;B[0]0; } void getln(int* A,int* B,int n) {static int f[MAXN],g[MAXN];deriv(A,f,n);getinv(A,g,n);int l0;while ((1l)(n1)) l;init(l);for (int in;i(1l);i) f[i]g[i]0;NTT(f,l,0);NTT(g,l,0);for (int i0;i(1l);i) f[i](ll)f[i]*g[i]%MOD;NTT(f,l,1);integ(f,B,n); } int f[MAXN],g[MAXN]; int main() {rt[0][21]qpow(3,479);rt[1][21]inv(rt[0][21]);for (int i20;i0;i--){rt[0][i](ll)rt[0][i1]*rt[0][i1]%MOD;rt[1][i](ll)rt[1][i1]*rt[1][i1]%MOD;}int n;scanf(%d,n);fac[0]1;for (int i1;in;i) fac[i](ll)fac[i-1]*i%MOD;finv[n]inv(fac[n]);for (int in-1;i0;i--) finv[i](ll)finv[i1]*(i1)%MOD;for (int i0;in;i) f[i](ll)qpow(2,((ll)i*(i-1)/2)%(MOD-1))*finv[i]%MOD;getln(f,g,n1);printf(%d\n,(ll)g[n]*fac[n]%MOD);return 0; }
http://www.yutouwan.com/news/84120/

相关文章:

  • 找别人做网站要考虑哪些求一个免费的企业邮箱
  • wordpress中文建站宣威市住房和城乡建设局网站下载中心
  • pe管网站建设 中企动力wordpress安装在哪
  • 外贸网站英文版免费软件不用充值
  • php网站开发常用框架wordpress设置主导航无法点击
  • 站长平台seo百度seo课程
  • 联派网站建设一起做网店网站官方
  • 黑客入侵网站怎么做河源网站推广
  • 煤炭建设协会官方网站图案设计网
  • 山西专业网站建设大全沈阳市建设局网站
  • 网站建设排名优化公司wap和网页的区别
  • 招聘网站开发背景wordpress插件位置
  • 专业网站seo优化公司湘潭平台公司
  • 做网站发布网我的网站360搜索被做跳转
  • 公司建设网站有什么好处北京海淀区最新通知
  • 廊坊高端品牌网站建设网站改版的目的
  • 建设网站宣传页谁能给个网址啊
  • 湖北省建设厅信息网站深圳网站设计公司哪种
  • 网站建设模块是什么意思域名都有哪些
  • 网站开发哪方面好做深圳市制作网站
  • wordpress模板 多梦长春网站优化
  • 江门网站建设开发标准型网站建设
  • 武威做网站的长春网站建设
  • 莱阳网站制作中国建设银行遵义市分行网站
  • 网站首页轮播图怎么换4399小游戏网页在线玩
  • 山东联通网站备案中国制造网内贸站
  • 企业网站建设免备案免费做链接的app有哪些
  • 网站建设得缺点什么值得买网站模版
  • 网站建设网页制作软件有哪些贵州微信网站建设
  • wordpress百度云插件网站建设优化外包