内存限制:128 MB
时间限制:2 S
题面:Markdown
评测方式:文本比较
上传者:
提交:1
通过:1
一个 $ n\times m $ 的表格,玩 bingo 游戏。
主持人每轮随机报出一个位置,你要在表格中给这个位置做上标记,当某一行/一列上的格子全部被标记时,游戏结束。
然而现在你不小心将桌上的墨水打翻了,导致表格中有 $ k $ 个位置被墨水污染无法做上标记。
请注意,主持人依然会报出被墨水污染的位置,也就是说,每个位置被报到的概率都还是 $ \frac{1}{n\times m}$ 。
请输出游戏结束的期望轮数对 $998244353$ 取模的结果,若游戏无法结束,则输出 $ -1$ 。
令 $ M=998244353 $ 。可以证明答案能够表示为最简分数 $ \frac{p}{q} $,其中 $ p $ 和 $ q $ 是正整数且 $ q \not \equiv 0 \pmod M $。则你需要输出 $ p \cdot q^{-1} \pmod M $,其中 $ q^{-1} $ 表示 $ q $ 在模 $ M $ 意义下的乘法逆元。换句话说,输出满足 $ 0 \leq x< M $ 且 $ x \cdot q \equiv p \pmod M $ 的整数 $ x $。可以证明,符合条件的 $ x $ 是唯一的。
---
为了防止输入过大带来的常数问题,`C++` 选手请尽量使用关闭流同步的 `std::cin` 和 `std::cout` 实现输入输出,否则可能出现因读入输出问题导致的 TLE 等。
```cpp
int main(){
std::ios::sync_with_stdio(0);
std::cin.tie(0);
// your code
return 0;
}
```
输出 $ T $ 行,对于每组数据输出一行一个正整数,表示游戏结束的期望轮数,若无法结束则输出 $ -1$ 。