4 条题解

  • 0
    @ 2026-6-4 19:46:41
    import sys
    input = lambda:sys.stdin.readline().strip()
    n,m = map(int, input().split())
    MD=998244353
    s1 = [[0] * (m+1) for _ in range(n+1)]
    s2 = [[0] * (m+1) for _ in range(n+1)]
    s3 = [[0] * (m+1) for _ in range(n+1)]
    def acc(x, y):
        for m in [s1,s2,s3]:
            m[x+1][y+1] = m[x][y+1] + m[x+1][y] - m[x][y]
            m[x+1][y+1] %= MD
    for i in range(n):
        inp = input()
        for j in range(m):
            acc(i, j)
            if inp[j] == 'R':
                s1[i+1][j+1] += 1
            elif inp[j] == 'O':
                s2[i+1][j+1] += s1[i+1][j+1]
            elif inp[j] == 'G':
                s3[i+1][j+1] += s2[i+1][j+1]
    print(s3[n][m]%MD)
    

    信息

    ID
    618
    时间
    1000ms
    内存
    512MiB
    难度
    普及−
    标签
    递交数
    326
    已通过
    109
    上传者