题目传送门

这道题比较水,设f[i][j]表示i~j区间合并的最大值。

#include <cstdio>
#define max(a,b) a>b?a:b
using namespace std;
int N,x,f[][],ans;
int main(){
scanf("%d",&N);for(int i=;i<=N;i++)scanf("%d",&x),f[i][i]=x,ans=max(ans,x);
for(int i=N-;i>;i--)
for(int j=i+;j<=N;j++)
for(int k=i;k<j;k++)
if(f[i][k]==f[k+][j]){
f[i][j]=max(f[i][k]+,f[i][j]);
ans=max(ans,f[i][j]);
}
printf("%d",ans);
return ;
}

但这道题目还有扩大数据范围后的做法:

题目传送门

仔细观察方程:

f[i][j]=max(f[i][k]+,f[i][j]);

我们设的是i~j区间的最大值,这里有个巧妙的转化,设f[i][j]为j开始最大值达到i的右边界。

#include <cstdio>
using namespace std;
int N,x,f[][],ans;
int main(){
scanf("%d",&N);for(int i=;i<=N;i++)scanf("%d",&x),f[x][i]=i;
for(int i=;i<=;i++)
for(int j=;j<=N;j++){
if(!f[i][j]&&f[i-][j])f[i][j]=f[i-][f[i-][j]+];
if(f[i][j])ans=i;
}
printf("%d",ans);
return ;
}

数据扩大

USACO16OPEN_248&&USACO16OPEN_262144_KEY的更多相关文章

随机推荐

  1. [EffectiveC++]item36:绝不重新定义继承而来的non-virtual函数

  2. jclass和jobject的迷惑

    [译]jclass和jobject 2012-09-18 15:02:58|  分类: Android |字号 订阅   jclass和jobject的迷惑第一次使用JNI,实例引用(jobject) ...

  3. Django的开发服务的搭建和使用

    创建一个项目¶ 如果这是你第一次使用Django,你需要完成一些初始化操作. 即,你需要自己用代码来创建一个Django项目 ——一个Django实例所需的设置集合,包括数据库的配置.Django的配 ...

  4. js获取昨天今天和明天

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/UP19910522/article/details/30028299 <html> &l ...

  5. perl的一些小函数——split、join、sort

    有时候,我们需要将一个字符串或一行文本通过某种方式转换为单个的元素存储在数组中,或者将许多元素通过某种分割符,将他们组合成一个字符串.perl刚好就提供了这样的功能,通过split或者join分割或组 ...

  6. Git bash 终止git log 命令

    Git bash中 可以通过键入: q ,结束该命令.

  7. 关于readonly的一些说明

    readonly在代码中只能在字段初始化器和构造函数中赋值,并不是说readonly只能赋值一次,超出这个范围以后readonly就不能通过代码修改了,但是还是可以用反射来修改,readonly仅仅是 ...

  8. tomcat启动后报错Bad version number in .class file (unable to load class oracle.jdbc.OracleDriver)

    对于tomcat启动后报错: 错误原因:tomcat使用的jdk和eclipce的编译用的jdk版本不同. 解决办法: 1.首先确定tomcat的jdk版本: 2.点开tomcat查看jdk版本. 使 ...

  9. windows下3D文字

    windows下3D文字 简单概述 需要在每一帧的视频图像上面添加3D文字,文字可以自由移动位置,变换各种字体属性,还能进行一些简单动画.然后把处理好的视频图像传个下一个步骤去处理.做的过程中参考了G ...

  10. OOP导论系列---抽象过程

    OOP导论系列---抽象过程 所有编程语言都提供抽象机制.可以认为,人们所能解决的问题的复杂性直接取决于抽象的类型和质量.所谓“类型”是指“所抽象的是什么?”你可以抽取待求解问题的任何概念化构件,如: ...