关于 P1004 的题解

几个月没有来博客写题解 找借口不写题 了,40多道题已经腐烂在U盘中。

o( ̄▽ ̄)ブ

一开始看到题目,我的心情是苦闷mengbi的,我太弱啦,不还这种题的!

但si,这帅气的题目范围终究奠定了这道题水题的地位。

终于,我靠着不懈的毅力,以及强大的dalao题解团 得以AC了这道题,爽!!!

下面看看蒟蒻是如何连抄带做出这道题的吧?

(¬︿̫̿¬☆)

( ̄_, ̄ )

壹.

模拟方式~~

很好理解,假设有两个小人从起点一起走,至于在那里走,很好想的吗:


    scanf("%d",&n);while(x>0&&y>0&&v>0){scanf("%d%d%d",&x,&y,&v);map[x][y]=v;}

嗯~ o( ̄▽ ̄)o,这个,好像 map 不可以用

氟铀碳钾

待会儿用 mmp


贰.

开始走。

两人位置分别为(i,j),(k,l) 。

两人的位置递推式应为:


f[i][j][k][l]=
max(
f[i-1][j][k-1][l],
f[i][j-1][k][l-1],
f[i][j-1][k-1][l],
f[i-1][j][k][l-1])
+mmp[i][j]+mmp[k][l];

~~p.s:十分温馨的提示:没有草稿纸的去死呦(*^_^*)~~


叁.

两个人碰到一起开始吵架怎么办?

到一起算了两次怎么办?

一位 dalao yjxyjx 说:““既然加了两遍,那就减去一遍啊”——楼下大佬&icydalao”。

说的好。

献上完整的代码:


#include<bits/stdc++.h>using namespace std;int n;
int x=1,y=1,v=1;
int mmp[15][15];
int f[15][15][15][15];
int mex(int a,int b,int c,int d)
{if(b>a)a=b;if(c>a)a=c;if(d>a)a=d;return a;
}
int main()
{scanf("%d",&n);while(x>0&&y>0&&v>0){scanf("%d%d%d",&x,&y,&v);mmp[x][y]=v;}for(register int i=1;i<=n;i++){for(register int j=1;j<=n;j++){for(register int k=1;k<=n;k++){for(register int l=1;l<=n;l++){f[i][j][k][l]=mex(f[i-1][j][k-1][l],f[i][j-1][k][l-1],f[i][j-1][k-1][l],f[i-1][j][k][l-1])+mmp[i][j]+mmp[k][l];if((i==k)&&(j==l)){f[i][j][k][l]-=(mmp[i][j]);}}}}}printf("%d",f[n][n][n][n]);return 0;
}

关于 mex ,你懂的( ̄▽ ̄)"~~~


就这样,谢谢!!!

转载于:https://www.cnblogs.com/XSZCaesar/p/10274672.html

题解 P1004 【方格取数】相关推荐

  1. 洛谷P1004方格取数

    var n,m,i,j,l,p,x,y,o:longint;fl:array[0..100] of array[0..100] of longint; //棋盘board:array[-2..51] ...

  2. 洛谷 P1004 方格取数 【多线程DP/四维DP/】

    题目描述(https://www.luogu.org/problemnew/show/1004) 设有N*N的方格图(N<=9),我们将其中的某些方格中填入正整数,而其他的方格中则放 人数字0. ...

  3. 洛谷 P1004 方格取数 WD

    题目描述 设有N*N的方格图(N<=9),我们将其中的某些方格中填入正整数,而其他的方格中则放 人数字0.如下图所示(见样例): A0 0 0 0 0 0 0 00 0 13 0 0 6 0 0 ...

  4. 【动态规划】P1004 方格取数(四维dp模板题)

    与传纸条方法相同! 用f[i][j][k][l]表示第一个人走到(i,j),第二个人走到(k,l)的最优解 我们考虑两个人同时走,就相当于数字三角形. 状态转移方程为: f[i][j][k][l]=m ...

  5. 洛谷1004方格取数

    P1004 方格取数 题目描述 设有N*N的方格图(N<=9),我们将其中的某些方格中填入正整数,而其他的方格中则放 人数字0.如下图所示(见样例): A0 0 0 0 0 0 0 00 0 1 ...

  6. CSP2020-J2 题解 —— D题:方格取数

    题目相关 题目链接 目前还没有官方的题目,本题目来自洛谷,https://www.luogu.com.cn/problem/P7074?contestId=37027. 题目描述 设有 n×m 的方格 ...

  7. [codevs 1907] 方格取数3

    [codevs 1907] 方格取数3 题解: 二分图染色.最大点权独立集. 因为要用到最大独立集的一些思路,故先写了一篇最大独立集的题解:http://blog.csdn.net/qq_211102 ...

  8. [codevs 1227] 方格取数2

    [codevs 1227] 方格取数 2 题解: 注:这是CODEVS的方格取数2,走k次的版本. 因为每个格子可以走无数次,但走过一次之后数字就变成了0,也就是只有一次可以加上格子里的数字.所以要拆 ...

  9. 线性规划与网络流24题●09方格取数问题13星际转移问题

    ●(做codevs1908时,发现测试数据也涵盖了1907,想要一并做了,但因为"技术"不佳,搞了一上午) ●09方格取数问题(codevs1907  方格取数3) 想了半天,也没 ...

  10. 信息学奥赛一本通 2007:【20CSPJ普及组】方格取数 | 洛谷 P7074

    [题目链接] ybt 2007:[20CSPJ普及组]方格取数 洛谷 P7074 [CSP-J2020] 方格取数 [题目考点] 1. 坐标型动规 [解题思路] 确定状态:a[i][j]为从起点走到i ...

最新文章

  1. 用JS查看修改CSS样式(cssText,attribute('style'),currentStyle,getComputedStyle)
  2. 堆栈的生长方向和空栈满栈的区别
  3. ldap接触(1)之如何把安全证书导入到java中的cacerts证书库
  4. Android画布的保存,Android canvas用法介绍之save()和restore()
  5. 在MongoDB和Spring Batch中将XML转换为JSON和原始使用
  6. rocketmq新扩容的broker没有tps_揭秘 RocketMQ 新特性以及在金融场景下的实践
  7. ASP.NET MVC 3.0学习系列文章(开始学习MVC)
  8. 随机模拟的基本思想和常用采样方法(sampling)
  9. Revit二次开发——依据两条平曲线创建一条三维曲线
  10. 校园网下桥接无法上网原理分析如何破解
  11. Idea打包Jar文件
  12. 手机玩exe游戏的模拟器_手机就能玩Switch游戏,蛋蛋模拟器+盖世小鸡X2手柄体验...
  13. 计算机组成原理区分正负数实验,计算机组成原理实验报告(4个).doc
  14. vue3 + js-cookie加密解密(普通版本/TS版本)
  15. 关于华硕笔记本重装系统后引起的一些列问题的解决方案
  16. 8月第四周回顾:四核产品将发口角先起 AMD遭遇跳票流言
  17. 特斯拉如何恢复出厂设置_iphone如何恢复手机出厂设置
  18. 手机最好的html5浏览器,综合能力的较量 8大手机浏览器半年横评
  19. x61安装ghost xp
  20. 用koomail有条不紊分类管理邮件

热门文章

  1. 互联网大数据中标签的类型
  2. 3种常见的统计学方法
  3. 信息技术前言讲座报告
  4. 北大人工智能前沿讲座--第二讲 嵌入式人工智能
  5. 阿里云双十一服务器注册流程
  6. bugku 杂项 QAQ
  7. 用proteus来看二极管的压降
  8. 软工网络15团队作业4——Alpha阶段敏捷冲刺之Scrum 冲刺博客(Day1)
  9. 金融危对机计算机行业的影响,1范文2-金融机对我国电子信息产业的影响.doc
  10. 记录一次腾讯面试经历