Submission #42750205


Source Code Expand

/*+Rainybunny+*/

#include <bits/stdc++.h>

#define rep(i, l, r) for (int i = l, rep##i = r; i <= rep##i; ++i)
#define per(i, r, l) for (int i = r, per##i = l; i >= per##i; --i)

const int MAXN = 400, MOD = 998244353;
int n, m, bino[MAXN + 5][MAXN + 5], f[MAXN + 5][MAXN + 5];

inline int mul(const int u, const int v) { return 1ll * u * v % MOD; }
inline void subeq(int& u, const int v) { (u -= v) < 0 && (u += MOD); }
inline int sub(int u, const int v) { return (u -= v) < 0 ? u + MOD : u; }
inline void addeq(int& u, const int v) { (u += v) >= MOD && (u -= MOD); }
inline int add(int u, const int v) { return (u += v) < MOD ? u : u - MOD; }
inline int mpow(int u, int v) {
    int ret = 1;
    for (; v; u = mul(u, u), v >>= 1) ret = mul(ret, v & 1 ? u : 1);
    return ret;
}

inline void init() {
    rep (i, 0, MAXN) {
        bino[i][0] = 1;
        rep (j, 1, i) bino[i][j] = add(bino[i - 1][j - 1], bino[i - 1][j]);
    }
}

int main() {
    init();
    scanf("%d %d", &n, &m);

    int ans = 1;
    std::fill_n(f[0], m + 1, 1);
    rep (i, 1, n) {
        rep (j, 0, m) f[j][j] = 0;
        rep (l, 0, m) rep (r, l + 1, m) addeq(f[l + 1][r], f[l][r]);
        rep (l, 0, m) rep (r, l, m - 1) addeq(f[l][r + 1], f[l][r]);
        rep (j, 1, m) addeq(ans, mul(mul(bino[n][i], bino[m][j]), f[j][j]));
    }
    printf("%d\n", ans);
    return 0;
}

Submission Info

Submission Time
Task F - Montage
User Rainybunny
Language C++ (GCC 9.2.1)
Score 900
Code Size 1398 Byte
Status AC
Exec Time 93 ms
Memory 5008 KiB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:31:10: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   31 |     scanf("%d %d", &n, &m);
      |     ~~~~~^~~~~~~~~~~~~~~~~

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 900 / 900
Status
AC × 3
AC × 36
Set Name Test Cases
Sample sample-01.txt, sample-02.txt, sample-03.txt
All 001-001.txt, 001-138.txt, 001-400.txt, 002-004.txt, 003-003.txt, 003-263.txt, 006-007.txt, 007-006.txt, 007-030.txt, 007-310.txt, 011-069.txt, 022-032.txt, 031-001.txt, 032-003.txt, 036-014.txt, 039-073.txt, 045-019.txt, 099-004.txt, 111-080.txt, 146-074.txt, 164-082.txt, 254-076.txt, 266-388.txt, 308-208.txt, 309-222.txt, 314-385.txt, 359-326.txt, 369-336.txt, 371-371.txt, 373-372.txt, 393-400.txt, 400-001.txt, 400-395.txt, sample-01.txt, sample-02.txt, sample-03.txt
Case Name Status Exec Time Memory
001-001.txt AC 8 ms 4188 KiB
001-138.txt AC 2 ms 4432 KiB
001-400.txt AC 3 ms 4944 KiB
002-004.txt AC 2 ms 4300 KiB
003-003.txt AC 3 ms 4348 KiB
003-263.txt AC 3 ms 4808 KiB
006-007.txt AC 2 ms 4184 KiB
007-006.txt AC 2 ms 4304 KiB
007-030.txt AC 3 ms 4308 KiB
007-310.txt AC 6 ms 4808 KiB
011-069.txt AC 2 ms 4320 KiB
022-032.txt AC 2 ms 4348 KiB
031-001.txt AC 2 ms 4176 KiB
032-003.txt AC 2 ms 4196 KiB
036-014.txt AC 2 ms 4288 KiB
039-073.txt AC 3 ms 4308 KiB
045-019.txt AC 2 ms 4216 KiB
099-004.txt AC 2 ms 4216 KiB
111-080.txt AC 8 ms 4348 KiB
146-074.txt AC 5 ms 4536 KiB
164-082.txt AC 6 ms 4348 KiB
254-076.txt AC 6 ms 4540 KiB
266-388.txt AC 69 ms 4924 KiB
308-208.txt AC 26 ms 4672 KiB
309-222.txt AC 27 ms 4664 KiB
314-385.txt AC 73 ms 4824 KiB
359-326.txt AC 58 ms 4828 KiB
369-336.txt AC 62 ms 4844 KiB
371-371.txt AC 78 ms 5004 KiB
373-372.txt AC 79 ms 5008 KiB
393-400.txt AC 93 ms 4808 KiB
400-001.txt AC 2 ms 4268 KiB
400-395.txt AC 89 ms 4844 KiB
sample-01.txt AC 2 ms 4312 KiB
sample-02.txt AC 2 ms 4392 KiB
sample-03.txt AC 93 ms 4896 KiB