- HHTOI
有个问题
- @ 2025-8-30 17:30:24
格式化代码究竟算不算AI?
1 条评论
-
huhaoteng123 超市管理员 LV 2 SU @ 2025-8-31 13:58:33
啥意思?
- 1
啥意思?
#include <bits/stdc++.h>
#define int long long
using namespace std;
const int mod = 998244353;
int n, m;
int a[105][2005];
int f[105][205];
int qm(int x) {
if (x >= mod) {
x -= mod;
}
return x;
}
void ad(int &s, int t) {
s = qm(s + t);
return ;
}
signed main() {
freopen("meal.in", "r", stdin);
freopen("meal.out", "w", stdout);
scanf("%lld%lld", &n, &m);
int ans = 1;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++) {
scanf("%lld", &a[i][j]);
a[i][0] = qm(a[i][0] + a[i][j]);
}
ans = ans * qm(a[i][0] + 1) % mod;
}
ans = qm(ans - 1 + mod);
for (int o = 1; o <= m; o++) {
for (int i = 0; i <= n; i++) {
for (int j = 0; j <= 2 * n; j++) {
f[i][j] = 0;
}
}
f[0][n] = 1;
for (int i = 0; i < n; i++) {
for (int j = 0; j <= 2 * n; j++) {
if (f[i][j]) {
ad(f[i + 1][j], f[i][j]);
ad(f[i + 1][j + 1],f[i][j] * a[i + 1][o] % mod);
ad(f[i + 1][j - 1],f[i][j] * qm(a[i + 1][0] - a[i + 1][o] + mod) % mod);
}
}
}
for (int j = n + 1; j <= 2 * n; j++) {
ans = qm(ans - f[n][j] + mod);
}
}
printf("%lld", ans);
return 0;
}