P1004

news/2024/10/30 17:23:21/

设有 �×�N×N 的方格图 (�≤9)(N≤9),我们将其中的某些方格中填入正整数,而其他的方格中则放入数字 00。如下图所示(见样例):

A0  0  0  0  0  0  0  00  0 13  0  0  6  0  00  0  0  0  7  0  0  00  0  0 14  0  0  0  00 21  0  0  0  4  0  00  0 15  0  0  0  0  00 14  0  0  0  0  0  00  0  0  0  0  0  0  0B

某人从图的左上角的 A 点出发,可以向下行走,也可以向右走,直到到达右下角的 �B 点。在走过的路上,他可以取走方格中的数(取走后的方格中将变为数字 00)。
此人从 A 点到 B 点共走两次,试找出 22 条这样的路径,使得取得的数之和为最大。

输入格式

输入的第一行为一个整数 N(表示 N×N 的方格图),接下来的每行有三个整数,前两个表示位置,第三个数为该位置上所放的数。一行单独的 00 表示输入结束。

输出格式

只需输出一个整数,表示 22 条路径上取得的最大的和。

输入输出样例

输入 #1

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

输出 #1

67

代码如下

#include <iostream>
using namespace std;
int a[12][12],dp[12][12][12][12],n,x,y,t;
int main()
{
    cin>>n;
    cin>>x>>y>>t;
    while(x && y && t)
    {
        a[x][y]=t;
        cin>>x>>y>>t;
    }
    for(int i=1;i<=n;i++)
        for(int j=1;j<=n;j++)
            for(int k=1;k<=n;k++)
                for(int l=1;l<=n;l++)
                {
                    dp[i][j][k][l]=max(max(dp[i-1][j][k-1][l],dp[i][j-1][k][l-1]),max(dp[i-1][j][k][l-1],dp[i][j-1][k-1][l]))+a[i][j];
                    if(i!=k&&j!=l)
                        dp[i][j][k][l]+=a[k][l];
                }
    cout<<dp[n][n][n][n]<<endl;
    return 0;
}
 


http://www.ppmy.cn/news/396749.html

相关文章

PSCP~

PSCP 深度架构 AttnPacker——大幅优化的AI算法。 蛋白质结构和功能的形成&#xff0c;很大程度上取决于侧链原子间的相互作用&#xff0c;因此&#xff0c;精准的蛋白质侧链预测&#xff08;PSCP&#xff09;是解决蛋白质结构预测和蛋白质设计难题的关键一环。但此前蛋白质结…

邮箱pop和smtp协议的说明

解说地址&#xff1a;http://bbs.csdn.net/topics/10141665 POP3和SMTP是指什么&#xff1f; 许多朋友都在为邮箱的设置感到疑惑&#xff0c;特别是对于收信服务器和发信服务器的概念感到陌生&#xff0c;常常被人提到的SMTP和POP3是怎么回事呢&#xff1f; 其实一般每个提供…

关于邮箱的 POP 协议、imap 协议、imap 协议简单讲解

【三种邮箱协议说明】 以 263 邮箱为例 POP3 接收邮件协议(邮局协议)&#xff0c;端口:110 SLL 加密类型端口&#xff1a;995。较为常见的客户端 如 outlook、foxmail 都可以使用&#xff0c;使用客户端如果设置了接收邮件后同时删除服务端的邮件那么将会删除服务端上的邮件。 …

Mail-POP3(LumiSoft.Net)

LumiSoft.Net提供了丰富的网络开发组件&#xff0c;下载地址: http://www.lumisoft.ee/lswww/download/downloads/Net/ 解压缩后找到引用bin/Release/LumiSoft.Net.dll 打开命名空间 using LumiSoft.Net.Mime; using LumiSoft.Net.POP3.Client; 范例代码 /*To make this c…

【SMTP】【POP】电子邮件相关协议分析

一、 实验环境 通过普通路由器连接英特网的计算机一台&#xff1b;通过VMWare安装的Linux虚拟机一台&#xff1b;抓包工具&#xff1a;Wireshark&#xff1b;邮件处理软件&#xff1a;Foxmail。 二、 实验原理 SMTP工作原理 SMTP提供了一种邮件传输的机制&#xff0c;当收件…

c++11 标准模板(STL)(std::ios_base)成员类型与常量

流打开模式类型 std::ios_base::openmode typedef /*implementation defined*/ openmode; static constexpr openmode app /*implementation defined*/ static constexpr openmode binary /*implementation defined*/ static constexpr openmode in /*implementation defi…

1007

背景 Background 平面上有N个圆柱形的大钉子&#xff0c;半径都为R,所有钉子组成一个凸多边形。 现在你要用一条绳子把这些钉子围起来&#xff0c;绳子直径忽略不计。 描述 Description 求出绳子的长度 输入格式 Input Format 第1行两个数&#xff1a;整数N(1<N<100…

Python版day16

104. 二叉树的最大深度 给定一个二叉树&#xff0c;找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 # Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, r…