Logo Wy Online Judge

WyOJ

#773. B. 行列非空网格放置计数(mod 1e9+9)

数据前缀:borealis。

不要相信标题!

题目描述

给定 $n$ 行 $m$ 列的网格,每个格子可放置一颗宝石或留空。求使得每一行、每一列都至少有一颗宝石的放置方案数,对 $1\,000\,000\,007$ 取模。

输入格式

本题包含多组测试数据。

第一行一个整数 $T$($1\le T\le 10^4$),表示测试用例数。

接下来 $T$ 行,每行两个整数 $n,m$($1\le n,m\le 10^6$)。

保证 $\sum m \le 3.95 \times 10^6$,$\sum n \le 3.95 \times 10^6$(单文件内所有测试用例之和)。

输出格式

对每组测试用例输出一行一个整数,表示方案数对 $1\,000\,000\,007$ 取模的结果。

输入输出样例

样例 #1

样例输入 #1
3
2 2
2 3
5 5
样例输出 #1
7
25
24997921

样例 #2

样例输入 #2
3
1 1
2 2
3 3
样例输出 #2
1
7
265

样例 #3

样例输入 #3
4
1 1
1 5
5 1
2 3
样例输出 #3
1
1
1
25

样例 #4

样例输入 #4
18
1 1000000
1000000 1
2 999983
999983 2
3 300007
300007 3
4 200003
200003 4
5 123457
123457 5
80 400
400 80
99991 100003
100003 99991
100000 100000
131071 131072
131072 131071
200000 200000
样例输出 #4
1
1
750768686
750768686
184028760
184028760
190256799
190256799
412335914
412335914
594177708
594177708
538307143
538307143
513436221
439317439
439317439
422640231

数据范围

  • $1\le T\le 10^4$,$1\le n,m\le 10^6$,$\sum m \le 3.95 \times 10^6$,$\sum n \le 3.95 \times 10^6$。
  • 本题共 $100$ 个测试点。

$$ \begin{array}{|c|l|} \hline \text{测试点} & \text{性质} \\ \hline 1\sim16 & T \le 5 \text{ 且 }n,m\le 4 \\ 17\sim50 & T \le 5 \text{ 且 }n,m\le 11 \\ 51\sim58 & n=1\text{ 或 }m=1 \\ 59\sim65 & n=m \\ 66\sim80 & n,m \le 80 \text{ 且 }\sum n,\sum m \le 100 \\ 81\sim90 & n,m \le 400 \text{ 且 }\sum n,\sum m \le 600\\ 91\sim100 & n,m \le 10^6 \\ \hline \end{array} $$

背景(与题目没有任何关系)

更妙的是,有些性质就单独占一个测试点,比如那个“P 分块有序”,就一个点,孤零零地待在表格中间,既没有解释什么叫“分块有序”,也没有给具体范围,神秘感直接拉满。我盯着它看了整整十秒,满脑子都在想:这到底是个什么东西?是不是我写了就能过,不写就过不了?最后我决定放弃思考,因为后面还有一整排 N≤0.2、T=200!(感叹号不是表示强烈感情)的一般排列测试点等着我去数,整整 46 个点全是重复的,这种力度,充分体现了出题人对“一般排列”的深切关怀,简直是在用测试点数量告诉我:“别怕,写个暴力,前几十个点稳了。” 时间给到 30 秒,空间给到 1024 MB,慷慨得像是怕我代码写得太烂跑不动,又像是暗示正解复杂度不低。可再看看那些 N≤10、N≤100 的小数据点,我又陷入了深深的纠结:我是该认真想想正解,还是干脆写个暴力把前几十个点骗完就走?出题人用这张表格,成功地把我从“解题模式”切换到了“策略模式”,满脑子都是“这个点我能过吗”“那个性质我能用吗”,题目本身反而成了背景板。 总之,感谢出题人,感谢这套题的测试点表格。它让我在考场上不再迷茫——我知道自己肯定过不了最后那几个大点,但我至少能把表格里的数字背下来,回家也好跟同学吹嘘:“这套题有 400 个测试点,我见过!”

神犇神犇,mod 1e9+9 是什么意思

贡献说明

OpenAI Codex 协助落实数据范围调整,同步修改标准程序、数据生成器和输入验证器,增强正式数据与样例,并完成答案核对、运行计时及测评数据包校验。

题目信息
  • 难度 UKE
  • 控制组 OR_GANISATION
  • 时间限制 2 s
  • 空间限制 512 MB
  • 数据大小 201.387 KB
提交统计
  • 提交数 38
  • 通过数 10
  • 通过率 26.3%