设 \(f_{i,j}\) 为恰好 \(i\) 行 \(j\) 列不满足条件的矩阵个数, \(g_{i,j}\) 为钦定 \(i\) 行 \(j\) 列不满足条件的矩阵个数。

容易得到:

\[g_{x,y}=\binom n x \binom n y (k-1)^{n^2-(n-x)(n-y)}k^{(n-x)(n-y)}
\]
\[g_{x,y}=\sum_{i=x}^n\sum_{j=y}^n\binom i x\binom j y f_{i,j}
\]

根据二元二项式反演有:

\[f_{x,y}=\sum_{i=x}^n\sum_{j=y}^n\binom i x\binom j y(-1)^{i+j-x-y}g_{i,j}
\]

我们要求的是 \(f_{0,0}\),也就是:

\[\sum_{i=0}^n\sum_{j=0}^n\binom i 0\binom j 0\binom n i\binom n j(-1)^{i+j}(k-1)^{n^2-(n-i)(n-j)}k^{(n-i)(n-j)}
\]
\[\sum_{i=0}^n\sum_{j=0}^n\binom n i\binom n j(-1)^{i+j}(k-1)^{n^2-n^2+ni+nj-ij}k^{n^2-ni-nj+ij}
\]
\[k^{n^2}\sum_{i=0}^n\sum_{j=0}^n\binom n i\binom n j(-1)^{i+j}(\frac {k-1} k)^{ni+nj-ij}
\]

为了方便,以下设 \(a=\frac {k-1} k\)。

做法1

有 \(ij=\binom {i+j} 2-\binom i 2-\binom j 2\),所以:

\[k^{n^2}\sum_{i=0}^n\sum_{j=0}^n\binom n i\binom n j(-1)^{i+j}a^{ni+nj-\binom {i+j} 2+\binom i 2+\binom j 2}
\]
\[k^{n^2}n!^2\sum_{i=0}^n\sum_{j=0}^n\frac 1 {i!(n-i)!}\frac 1 {j!(n-j)!}(-1)^{i+j}a^{ni+nj-\binom {i+j} 2+\binom i 2+\binom j 2}
\]

设:

\[F_i=\frac {(-1)^ia^{ni+\binom i 2}} {i!(n-i)!}
\]
\[G_x=\sum_{i=0}^xF_i \times F_{x-i}
\]

答案即为:

\[k^{n^2}n!^2\sum_{i=0}^{2n}G_i \times a^{-\binom i 2}
\]

然后我们有 \(a^{\binom n 2}= \prod_{i=1}^{n-1}a^i\),可以线性递推 \(a^{ni}\) 和 \(a^{\binom i 2}\)。

使用 MTT 计算 \(G\) 即可 \(O(\log mod+n\log n)\) 计算答案。

做法2

\[k^{n^2}\sum_{i=0}^n\sum_{j=0}^n\binom n i\binom n j(-1)^{i+j}a^{ni+(n-i)j}
\]
\[k^{n^2}\sum_{i=0}^n\binom n i(-1)^ia^{ni}\sum_{j=0}^n\binom n j(-1)^ja^{(n-i)j}
\]
\[k^{n^2}\sum_{i=0}^n\binom n i(-1)^ia^{ni}(1-a^{n-i})^n
\]
\[k^{n^2}\sum_{i=0}^n\binom n i(-1)^i(a^i-a^n)^n
\]

预处理 \(a^1 \sim a^n\) 即可 \(O(n\log n+\log mod)\)。

CF1228E题解的更多相关文章

  1. 2016 华南师大ACM校赛 SCNUCPC 非官方题解

    我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...

  2. noip2016十连测题解

    以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...

  3. BZOJ-2561-最小生成树 题解(最小割)

    2561: 最小生成树(题解) Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1628  Solved: 786 传送门:http://www.lyd ...

  4. Codeforces Round #353 (Div. 2) ABCDE 题解 python

    Problems     # Name     A Infinite Sequence standard input/output 1 s, 256 MB    x3509 B Restoring P ...

  5. 哈尔滨理工大学ACM全国邀请赛(网络同步赛)题解

    题目链接 提交连接:http://acm-software.hrbust.edu.cn/problemset.php?page=5 1470-1482 只做出来四道比较水的题目,还需要加强中等题的训练 ...

  6. 2016ACM青岛区域赛题解

    A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Jav ...

  7. poj1399 hoj1037 Direct Visibility 题解 (宽搜)

    http://poj.org/problem?id=1399 http://acm.hit.edu.cn/hoj/problem/view?id=1037 题意: 在一个最多200*200的minec ...

  8. 网络流n题 题解

    学会了网络流,就经常闲的没事儿刷网络流--于是乎来一发题解. 1. COGS2093 花园的守护之神 题意:给定一个带权无向图,问至少删除多少条边才能使得s-t最短路的长度变长. 用Dijkstra或 ...

  9. CF100965C题解..

    求方程 \[ \begin{array}\\ \sum_{i=1}^n x_i & \equiv & a_1 \pmod{p} \\ \sum_{i=1}^n x_i^2 & ...

随机推荐

  1. tcp协议下的Socket

    import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net ...

  2. 把 Navigation Bar 下面那条线删掉的最简单的办法! — By: 昉

    系统默认的 Navigation Bar 下面一直有条线,翻尽了文档却没找到能把它弄走的相关接口,处女座的简直木法忍啊有木有!!!! 研究了一下navigationBar下的子视图,原来只需要几行代码 ...

  3. Springboot+Redisson自定义注解一次解决重复提交问题(含源码)

    前言   项目中经常会出现重复提交的问题,而接口幂等性也一直以来是做任何项目都要关注的疑难点,网上可以查到非常多的方案,我归纳了几点如下:   1).数据库层面,对责任字段设置唯一索引,这是最直接有效 ...

  4. python基础语法_python中的布尔类型详解

    转自:http://www.cnblogs.com/521yywzyzhc/p/6264885.html   我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是 ...

  5. k8s笔记--驱逐与重调度,以及deschueduler的一次实验

    在Kubernetes中,调度是指将Pod放置到合适的Node上,然后对应的Node上的Kubelet才能够运行这些pod.调度器通过Kubernetes的监测机制来发现集群中新创建且尚未被调度的No ...

  6. Note -「Min_25 筛」“你就说这素因子你要不要吧?你要不要?”

      赛上想写,Track Lost 了属于是. \(\mathscr{Intro}\)   Min_25 筛是用于求积性函数前缀和,同时顺带求出一些"有意思"的信息的筛法.   一 ...

  7. node(s) didn‘t match node selector.

    k8s集群中,有pod出现了 Pending ,通过 kubectl describe pod 命令,发现了如下报错 0/4 nodes are available: 1 node(s) had ta ...

  8. suse 12 脚本部署docker(二进制文件)

    suse-linux:~ # cat /etc/issue Welcome to SUSE Linux Enterprise Server 12 SP3 (x86_64) - Kernel \r (\ ...

  9. Elasticsearch 7.12 启用 x-pack 组件

    文章目录 修改配置文件 设置密码 使用密码 首先,你要有一套es,关于es的部署,可以看我的另一篇博客 ELK-EFK-v7.12.0日志平台部署 $ ./bin/elasticsearch-plug ...

  10. Spring Bean配置加载为BeanDefinition全过程(注解配置)

    生产中有很多形式的的配置方式,本文仅分析注解配置.对于其他形式的配置区别主观以为主要在配置文件的解析过程不同,不一一分析了.本文以利用Dubbo框架开发rpc服务端为例详细阐述配置类的解析.数据保存. ...