VIJOS-P1474 雷曼兔(csapc)
JDOJ 1532: VIJOS-P1474 雷曼兔(csapc)
https://neooj.com/oldoj/problem.php?id=1532
Description
Input
Output
Sample Input
Sample Output
HINT
最优路径为4-> 3-> 2-> 1,得分为4+1+4=9。
这道题比线性动归稍微难了一点点。
难点在数据结构上。
可以开结构体,也可以二维数组,由于结构体码长比较恶心,所以我用的二维数组。
为什么呢?
因为算花费(华丽度)的时候要用到坐标,所以要把坐标和高度同时存进去。
一定要多开至少1位!别心疼那点空间,我就因为这个没A。
我们把状态设置成dp[i]表示从山脚跳到高度为i的点的华丽度的最大值。
然后还会有初始化的一个难点。
我们把初值设定为直接从i点跳到山脚的华丽度。
为什么呢?
因为我们状态的设定是反着来的。(从山脚往山顶蹦)
然后我们在动归松弛的时候就会发现,这其实和floyd的实现原理很像。
就是中间找断点看看能否松弛。
这也是一个很重要的思想
希望大家慢慢掌握
上代码:
#include<cstdio>
#include<algorithm>
#include<cmath>
using namespace std;
int m[][];
int n;
int calc(int x,int y)
{
return (abs(m[x][]-m[y][])+abs(m[x][]-m[y][]))*(abs(m[x][]-m[y][])+abs(m[x][]-m[y][]));
}
int dp[];
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
for(int j=;j<=n;j++)
{
int a;
scanf("%d",&a);
m[a][]=a;
m[a][]=i;
m[a][]=j;
}
for(int i=;i<=n*n;i++)
dp[i]=calc(i,);
for(int i=;i<=n*n;i++)
for(int j=;j<i;j++)
dp[i]=max(dp[i],dp[j]+calc(i,j));
printf("%d",dp[n*n]);
return ;
}
VIJOS-P1474 雷曼兔(csapc)的更多相关文章
- 胡小兔的OI日志3 完结版
胡小兔的 OI 日志 3 (2017.9.1 ~ 2017.10.11) 标签: 日记 查看最新 2017-09-02 51nod 1378 夹克老爷的愤怒 | 树形DP 夹克老爷逢三抽一之后,由于采 ...
- 【BZOJ 1061】【Vijos 1825】【NOI 2008】志愿者招募
http://www.lydsy.com/JudgeOnline/problem.php?id=1061 https://vijos.org/p/1825 直接上姜爷论文... #include< ...
- vijos P1915 解方程 加强版
背景 B酱为NOIP 2014出了一道有趣的题目, 可是在NOIP现场, B酱发现数据规模给错了, 他很伤心, 哭得很可怜..... 为了安慰可怜的B酱, vijos刻意挂出来了真实的题目! 描述 已 ...
- vijos P1780 【NOIP2012】 开车旅行
描述 小\(A\)和小\(B\)决定利用假期外出旅行,他们将想去的城市从\(1\)到\(N\)编号,且编号较小的城市在编号较大的城市的西边,已知各个城市的海拔高度互不相同,记城市\(i\)的海拔高度为 ...
- 【BZOJ 2541】【Vijos 1366】【CTSC 2000】冰原探险
http://www.lydsy.com/JudgeOnline/problem.php?id=2541 https://vijos.org/p/1366 loli秘制大爆搜_(:з」∠)_坑了好久啊 ...
- 【BZOJ 1065】【Vijos 1826】【NOI 2008】奥运物流
http://www.lydsy.com/JudgeOnline/problem.php?id=1065 https://vijos.org/p/1826 好难的题啊TWT ∈我这辈子也想不出来系列~ ...
- [题解]vijos & codevs 能量项链
a { text-decoration: none; font-family: "comic sans ms" } .math { color: gray; font-family ...
- [题解]vijos 运输计划
Description 公元 2044 年,人类进入了宇宙纪元.L 国有 n 个星球,还有 n−1 条双向航道,每条航道建立在两个星球之间,这 n−1 条航道连通了 L 国的所有星球.小 P 掌管一家 ...
- vijos P1448 校门外的树
描述 校门外有很多树,有苹果树,香蕉树,有会扔石头的,有可以吃掉补充体力的--如今学校决定在某个时刻在某一段种上一种树,保证任一时刻不会出现两段相同种类的树,现有两个操作:\(K=1\),读入\(l, ...
随机推荐
- MySQL的delete误操作的快速恢复方法
1. 根据误操作时间定位binlog位置找到数据库的binlog存放位置,当前正在使用的binlog文件里面就有我们要恢复的数据.一般生产环境中的binlog文件都是几百M乃至上G的大小,我们不能逐行 ...
- tomcat参数java_opts调整
启动文件修改 在windows环境下,tomcat下的~/bin/catalina.bat文件,在文件头部加入: set "JAVA_OPTS=%JAVA_OPTS% -server -Xm ...
- maven pom项目的dependencies转gradle格式
1.新建一个文件件 2.创建pom.xm,放到新建的文件夹中 3.在命令行切换到新建文件夹中,执行: gradle init --type pom
- Module Code: CMT107
Cardiff School of Computer Science and InformaticsCoursework Assessment Pro-formaModule Code: CMT107 ...
- VS 插件 ReSharper 的个人习惯
个人习惯 1. 按 F12 恢复转到定义 很多时候,我个人不太喜欢一按 F12 就跳转到 ReSharper 自带的 查看代码浏览器,我还是喜欢 VS 默认的,于是点击菜单栏的 "RESHA ...
- Winform 窗体皮肤美化_IrisSkin
1 先把IrisSkin2.dll文件添加到当前项目引用(解决方案资源管理器->当前项目->引用->右键->添加引用,找到IrisSkin2.dll文件.....之后就不用我说 ...
- C#中使用WCF创建面向网络的服务程序
如题. 这种东西基于微软的一整套东西,在.NET内使用特别方便.利弊自行衡量,是否使用自行决定. 步骤1.创建一组在网上发布的方法 新建项目,类型选择“WCF服务应用程序” 在项目里,你可以补充任意 ...
- jvm常用排错命令
jvm命令很多,有一篇博客整理的非常全 https://www.cnblogs.com/ityouknow/p/5714703.html.我只列举一些常用的排错用到的. jps -l -v ...
- ASP.NET Core系列:JWT身份认证
1. JWT概述 JSON Web Token(JWT)是目前流行的跨域身份验证解决方案. JWT的官网地址:https://jwt.io JWT的实现方式是将用户信息存储在客户端,服务端不进行保存. ...
- ztree选父不选子选子不选父
var setting = { data: { simpleData: { enable: true } } ,check: { enable: true , chkStyle: 'checkbox' ...