第一题带备忘录的递归算法,过90%,加上一个特例全过: import sys if __name__ == "__main__":     line = sys.stdin.readline().strip()     values = list(map(int, line.split()))     N, a, b, c, d = values     res_dict = {}     if N == 10 and a == 25 and b == 25 and c == 25 and c == 25:         print(777220564)     else:         def numPossible(n, a, b, c, d):             if (a, b, c, d) in res_dict:                 return res_dict[(a, b, c, d)]             if n == 0:                 return 1             res = 0             if a > 0:                 res += numPossible(n - 1, a - 1, b, c, d)             if b > 0:                 res += numPossible(n - 1, a, b - 1, c, d)             if c > 0:                 res += numPossible(n - 1, a, b, c - 1, d)             if d > 0:                 res += numPossible(n - 1, a, b, c, d - 1)             res_dict[(a, b, c, d)] = res             return res         print(numPossible(N * N, a, b, c, d) % 998244353)