Day64力扣打卡

打卡记录

在这里插入图片描述


方格取数(线性DP)

import sys
input = sys.stdin.readline

'''
输入样例:
8
2 3 13
2 6 6
3 5 7
4 4 14
5 2 21
5 6 4
6 3 15
7 2 14
0 0 0
输出样例:
67
'''

n = int(input())
w = [[0] * (n + 1) for _ in range(n + 1)]
while True:
    a, b, c = map(int, input().split())
    if a == 0 and b == 0 and c == 0:
        break
    w[a][b] = c
f = [[[0] * (n + 1) for _ in range(n + 1)] for _ in range(2 * n + 1)]
for k in range(2, 2 * n + 1):
    for i1 in range(1, n + 1):
        for i2 in range(1, n + 1):
            j1, j2 = k - i1, k - i2
            if 1 <= j1 <= n and 1 <= j2 <= n:
                t = w[i1][j1]
                if i1 != i2:
                    t += w[i2][j2]
                f[k][i1][i2] = max(f[k - 1][i1][i2], f[k - 1][i1 - 1][i2], f[k - 1][i1][i2 - 1], f[k - 1][i1 - 1][i2]) + t
print(f[-1][-1][-1])

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-19 11:28:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-19 11:28:01       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-19 11:28:01       82 阅读
  4. Python语言-面向对象

    2023-12-19 11:28:01       91 阅读

热门阅读

  1. 每日一题:Leetcode1314.矩阵区域和

    2023-12-19 11:28:01       58 阅读
  2. js 数据类型

    2023-12-19 11:28:01       61 阅读
  3. tensorflow定制模型和训练算法

    2023-12-19 11:28:01       53 阅读
  4. Cookie和会话安全

    2023-12-19 11:28:01       49 阅读
  5. leetCode算法—6. N 字形变换

    2023-12-19 11:28:01       68 阅读
  6. 智能合约为什么是企业数字化转型的新引擎。

    2023-12-19 11:28:01       51 阅读
  7. Linux 系统常用命令总结

    2023-12-19 11:28:01       47 阅读