Cannon 有一个 的棋盘,第一行摆了 个炮,第二行摆了 个炮。 依次求发生 个炮吃炮事件的方案数。 有考虑两行之间的顺序和不考虑两行之间的顺序 两个子问题。 一行 个炮操作 次的方案是 。 设 ,问题即求$$ 问题一直接递推,问题二维护一个组合数前缀和即可。 // Author: HolyK // Created: Tue Jul 20 21:51:46 2021 #include <bits/stdc++.h> #define dbg(a...) fprintf(stderr, a) template <class T, class U> inline bo...