codeforces 255C C. Almost Arithmetical Progression(dp)
来源:互联网 发布:广东乐普数据科技 编辑:程序博客网 时间:2024/06/09 23:07
题目大意:
给出一个序列,求最长的子序列,满足隔位的两个数相等,问这个最长的子序列的长度是多少。
例如:10,20,10,20,10
题目分析:
定义状态dp[i][j]代表以第i个数为末尾,第j个数为倒数第二个的情况下的最长子序列。转移的方法很简单:dp[i][j]=dp[j][k]+1(a[k]==a[i])其中k的找法很简单,直接在转移的过程中顺便找与a[i]相等的比当前位小的最大的那个。
AC代码:
#include <iostream>#include <cstring>#include <algorithm>#include <cstdio>#define MAX 4007using namespace std;int dp[MAX][MAX];int a[MAX],n;int main ( ){ while ( ~scanf ( "%d" , &n ) ) { for ( int i = 1 ;i <= n ; i++ ) scanf ( "%d" , &a[i] ); int ans = 1; for ( int i = 1 ; i <= n ; i++ ) { int k = -1; for ( int j = 1 ; j < i ; j++ ) { if ( k == -1 ) dp[i][j] = 2; else dp[i][j] = dp[j][k] + 1; if ( a[j] == a[i] ) k = j; ans = max ( ans , dp[i][j] ); } } printf ( "%d\n" , ans ); }} 1
阅读全文
0 0
- CodeForces 255C. Almost Arithmetical Progression (DP)
- Codeforces 255C Almost Arithmetical Progression DP
- codeforces 255C C. Almost Arithmetical Progression(dp)
- codeforces 255C C. Almost Arithmetical Progression(dp)
- codeforces 156C Almost Arithmetical Progression (离散化+dp)
- cf#156-C. Almost Arithmetical Progression-DP
- CF - 255C - Almost Arithmetical Progression(dp)
- CF#255 C. Almost Arithmetical Progression (DP)
- CF 255 C Almost Arithmetical Progression
- C. Almost Arithmetical Progression (cf)
- Codeforces Round #156 (Div. 2) C. Almost Arithmetical Progression
- Codeforces 256A Almost Arithmetical Progression【dp】
- cf 156.div2 C Almost Arithmetical Progression
- CF 156 C Almost Arithmetical Progression
- Almost Arithmetical Progression
- Almost Arithmetical Progression
- Codeforces 567C Geometric Progression (离散 + DP)
- Codeforces Round #Pi (Div. 2) C. Geometric Progression dp
- mysql 返回值问题
- Eclipse的project的clean操作什么意思?
- 算法机考模拟题1002.等价二叉树
- 前端大牛得到的最佳职业生涯建议
- 阅读前必知
- codeforces 255C C. Almost Arithmetical Progression(dp)
- Jenkins和Gitlab
- javascipt 判断时间的问题
- bzoj1797 [Ahoi2009]Mincut 最小割 网络流+强连通分量
- jquery实现当修改上传的图片时,默认显示当前图片的名称,当选择新的图片时,显示最新的图片名称
- CDN 相关知识汇总
- N: Ignoring file '50unattended-upgrades.ucf-dist' in directory '/etc/apt/apt.conf.d/' as it has an i
- 前端学习笔记整理一 HTML
- swift 可选项和隐式展开可选项