首页 > 其他分享 >P1006 [NOIP2008 提高组] 传纸条

P1006 [NOIP2008 提高组] 传纸条

时间:2025-01-20 20:13:51浏览次数:1  
标签:P1006 纸条 NOIP2008 int include dp define

链接

https://www.luogu.com.cn/problem/P1006

题目

思路

和方格取数差不多,额外的步骤就是去重:只取当前节点(i,j)的右上或者左下部分。并且最后的答案是dp[m][n-1][m-1][n],只dp到终点的上面和左边一个点

代码

#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<algorithm>
#include<queue>
#include<cmath>
#include<map>
#include<string.h>
#include<string>
#include<vector>
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
using namespace std;
#define int long long
const int N = 55;

int mp[N][N];
int dp[N][N][N][N];
int dp2[N][N][N][N];
signed main()
{
	IOS;
	int m, n;
	cin >> m >> n;
	for (int i = 1; i <= m; i++)
		for (int j = 1; j <= n; j++)
			cin >> mp[i][j];
	for (int i = 1; i <= m; i++)
		for (int j = 1; j <= n; j++)
			for (int k = i+1; k <= m; k++)
				for (int l = 1; l < j; l++)//只能选两个区域:右上或者左下:当前ij节点无法到达的区域
				{
					dp[i][j][k][l] = max(max(dp[i - 1][j][k - 1][l], dp[i - 1][j][k][l - 1]),
						max(dp[i][j - 1][k - 1][l], dp[i][j - 1][k][l - 1])) + (mp[i][j] + mp[k][l]);
				}
	
	cout <<dp[m-1][n][m][n-1];

	return 0;
}

标签:P1006,纸条,NOIP2008,int,include,dp,define
From: https://www.cnblogs.com/zzzsacmblog/p/18682441

相关文章

  • 方格取数&传纸条
    linkPreface:都是对于数字金字塔模型的一种强化巩固,两道题有异曲同工之妙。Description:从矩阵的左上角走到矩阵的右下角,一共走\(2\)次,每次走过的数权值都会变成\(0\),求走\(2\)次路径的最大权值和。Solution:一个人分\(2\)次走不怎么好做,但是我们可以当做两个人走\(1......
  • luogu P10062 [SNOI2024] 拉丁方
    首先需要一些前置知识:每个点都恰好有\(k\)个度数的二分图称为\(k\)正则二分图,\(k\)正则二分图一定有完美匹配。Proof考虑Hall定理,不存在完美匹配当且仅当存在一个左部点的集合$S$使得$|tr(S)|<|S|$,这意味着$tr(S)$的度数之和要大于等于$|S|$的度数之和,但是......
  • P1006 [NOIP2008 提高组] 传纸条
    题目描述小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题。一次素质拓展活动中,班上同学安排坐成一个 m 行 n 列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了。幸运的是,他们可以通过传纸条来进行交流。纸条要经由许多同学传到对方手里,......
  • CSP/信奥赛C++语法基础刷题训练(33):洛谷P1055:[NOIP2008 普及组] ISBN 号码
    CSP/信奥赛C++语法基础刷题训练(33):洛谷P1055:[NOIP2008普及组]ISBN号码题目描述每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括999位数字、......
  • P1125 [NOIP2008 提高组] 笨小猴 C语言
    先说思路:创建了一个函数来判断是否是质数,然后将字符串输入,因为题干中说长度小于100,再加上\0,所以要把长度定义为101,之后对每一个字母用双层循环进行遍历,外层用count来计数,若超过maxn则赋新值,minn同样,之后再对maxn-minn得到的数进行判断即可,之后根据题意用if-else语句即可完成......
  • P1055 [NOIP2008 普及组] ISBN 号码
    题目描述每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括 99 位数字、11 位识别码和 33 位分隔符,其规定格式如 x-xxx-xxxxx-x,其中符号 - 就是分隔符(键盘上的减号),最后一位是识别码,例如 0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的......
  • P1056 [NOIP2008 普及组] 排座椅(模拟)
    1.用x,y数组存放切了几对学生,用数组的下标记录切的位置2.按照题目要求k和l依次取出最大的数组的值,并将其变为-1,再次循环取出第二大的值,之后所有下标为-1的的下标就是切的学生对多的3.切的意思是把两个学生分开#include<bits/stdc++.h>usingnamespacestd;intx[1005],......
  • 【题解】【模拟】—— [NOIP2008 普及组] ISBN 号码
    【题解】【模拟】——[NOIP2008普及组]ISBN号码[NOIP2008普及组]ISBN号码题目描述输入格式输出格式输入输出样例输入#1输出#1输入#2输出#2提示1.思路解析2.AC代码[NOIP2008普及组]ISBN号码通往洛谷的传送门题目描述每一本正式出版的图书都有一个I......
  • 洛谷P1006
    题目传送门:传送门p1006题目描述小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题。一次素质拓展活动中,班上同学安排坐成一个 mm 行 nn 列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了。幸运的是,他们可以通过传纸条来进行交流。纸条要......
  • hp1006pp.dll:HP打印机驱动的核心,受损后的修复指南
    hp1006pp.dll是一个与HP打印机相关的动态链接库(DLL)文件,通常与HPLaserJet1006等型号的打印机驱动程序的功能实现有关。这个DLL文件可能包含了处理打印作业、资源管理和与其他系统组件交互等功能所需的函数和资源,对于确保打印机驱动程序的正常运行非常重要。当hp1006pp.dll......