最后我忘记tm交卷了,就把手机监控屏幕监控都关了…
1
把 dfs里面的len(nxt[node]) >= 2: 改成 == 2
2
n,m = map(int, input().split())
matrix = []
for _ in range(n):
matrix.append(list(input()))
def func(n, m, matrix):
dp = [[0]*m for _ in range(n)]
dp[0][0] = 1 if matrix[0][0].isupper() else 0
for j in range(1,m): dp[0][j] = dp[0][j-1] + (1 if matrix[0][j].isupper() else 0)
for i in range(1,n):
for j in range(m):
curr = 1 if matrix[i][j].isupper() else 0
if j == 0:
dp[i][j] = dp[i-1][j] + curr
else:
dp[i][j] = max(dp[i-1][j], dp[i][j-1]) + curr
return dp[-1][-1]
print(func(n,m,matrix))