最长公共自序列LIS

三种模板,但是邝斌写的好像这题过不了

N*N

 #include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
const int N = ;
int a[],dp[],n;
int Lis(){
dp[]=;
int ans=;
int temp=;
for(int i=;i<=n;i++){
temp=;
for(int j=;j<i;j++){
if(dp[j]>temp&&a[i]>a[j]){
temp=dp[j];
}
}
dp[i]=temp+;
if(dp[i]>ans){
ans=dp[i];
}
}
return ans;
}
int main(){
while(~scanf("%d",&n)){
for(int i=;i<=n;i++){
scanf("%d",&a[i]);
}
printf("%d\n",Lis());
}
return ;
}

N*logn

 #include <stdio.h>
#include <algorithm>
#include <string.h>
using namespace std; int a[],dp[],c[],n; int bin(int sizee,int k)
{
int l = ,r = sizee;
while(l<=r)
{
int mid = (l+r)/;
if(k>c[mid] && k<=c[mid+])
return mid+;
else if(k<c[mid])
r = mid-;
else
l = mid+;
}
} int LIS()
{
int i,j,ans=;
c[] = a[];
dp[] = ;
for(i = ; i<=n; i++)
{
if(a[i]<=c[])
j = ;
else if(a[i]>c[ans])
j = ++ans;
else
j = bin(ans,a[i]);
c[j] = a[i];
dp[i] = j;
}
return ans;
} int main()
{
int i;
while(~scanf("%d",&n))
{
for(i = ; i<=n; i++)
scanf("%d",&a[i]);
printf("%d\n",LIS()); }
return ;
}

没有AC

 #include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
#define clc(a,b) memset(a,b,sizeof(a))
#define LL long long
#include<cmath>
const int inf=0x3f3f3f3f;
using namespace std;
const int MAXN=;
int a[MAXN],b[MAXN];
int Serch(int num,int low,int high) {
int mid;
while(low<=high) {
mid=(low+high)/;
if(num>=b[mid])
low=mid+;
else high=mid-;
}
return low;
}
int Dp(int n) {
int i,len,pos;
b[]=a[];
len=;
for(i=; i<=n; i++) {
if(a[i]>=b[len]) {
len=len+;
b[len]=a[i];
} else {
pos=Serch(a[i],,len);
b[pos]=a[i];
}
}
return len;
} int main() {
int n;
while(~scanf("%d",&n)) {
for(int i=; i<=n; i++)
scanf("%d",&a[i]);
printf("%d\n",Dp(n));
}
}

POJ 2533 Longest Ordered Subsequence (LIS DP)的更多相关文章

  1. poj 2533 Longest Ordered Subsequence(线性dp)

    题目链接:http://poj.org/problem?id=2533 思路分析:该问题为经典的最长递增子序列问题,使用动态规划就可以解决: 1)状态定义:假设序列为A[0, 1, .., n],则定 ...

  2. POJ 2533 Longest Ordered Subsequence(LIS模版题)

    Longest Ordered Subsequence Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 47465   Acc ...

  3. Poj 2533 Longest Ordered Subsequence(LIS)

    一.Description A numeric sequence of ai is ordered if a1 < a2 < ... < aN. Let the subsequenc ...

  4. POJ 2533 Longest Ordered Subsequence(裸LIS)

    传送门: http://poj.org/problem?id=2533 Longest Ordered Subsequence Time Limit: 2000MS   Memory Limit: 6 ...

  5. POJ 2533 Longest Ordered Subsequence(dp LIS)

    Language: Default Longest Ordered Subsequence Time Limit: 2000MS   Memory Limit: 65536K Total Submis ...

  6. 题解报告:poj 2533 Longest Ordered Subsequence(最长上升子序列LIS)

    Description A numeric sequence of ai is ordered if a1 < a2 < ... < aN. Let the subsequence ...

  7. POJ 2533 Longest Ordered Subsequence(DP 最长上升子序列)

    Longest Ordered Subsequence Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 38980   Acc ...

  8. POJ 2533 Longest Ordered Subsequence(最长上升子序列(NlogN)

    传送门 Description A numeric sequence of ai is ordered if a1 < a2 < ... < aN. Let the subseque ...

  9. POJ 2533——Longest Ordered Subsequence(DP)

    链接:http://poj.org/problem?id=2533 题解 #include<iostream> using namespace std; ]; //存放数列 ]; //b[ ...

随机推荐

  1. Extension method for type

    扩展其实真的很简单 msdn是这样规定扩展方法的:"扩展方法被定义为静态方法,但它们是通过实例方法语法进行调用的. 它们的第一个参数指定该方法作用于哪个类型,并且该参数以 this 修饰符为 ...

  2. 服务器环境搭建系列(四)-mysql篇

    1.按照上一篇服务器环境搭建系列(三)-JDK篇中的方法检查系统是否已经预装Mysql并卸载. 2.下载mysql,这里是MySQL-server-5.5.25-1.linux2.6.x86_64.r ...

  3. display:inline-block的深入理解

    在使用 CSS 实现表现的时候,会经常接触到 display:inline-block 这一属性,无论是 初接触 Web 标准还是接触标准已久的朋友,大都会对这一属性感觉很迷惑和模糊. display ...

  4. UVA 11739 Giving Candies

    求最大的公共前缀: 用后缀数组做: 其实暴力也可以过: #include<cstdio> #include<cstring> #include<algorithm> ...

  5. Firefly官方教程之Distributed使用文档

    原地址:http://bbs.gameres.com/thread_224191.html distributed使用文档1.distributed说明该模块主要封装了各个服务进程间进行通信的方法.n ...

  6. Java Web 前端高性能优化(一)

    Web 发展的速度让许多人叹为观止,层出不穷的组件.技术,只需要合理的组合.恰当的设置,就可以让 Web 程序性能不断飞跃.所有 Web 的思想都是通用的,它们也可以运用到 Java Web.这一系列 ...

  7. 几种 Docker 监控工具对比

    轻量级虚拟化容器 Docker,自发布以来便广受业界关注,在开源界和企业界掀起了一阵风.Docker 容器相对于 VM 有以下几个优势:启动速度快:资源利用率高:性能开销小. 从图中可以看出 Dock ...

  8. 1880-A. 偷吃可耻

    描述 EATER买来一堆好吃的,总共N+1份,共(N+1)/2种,每种准备了两份,同种都标上了相同的编号.本来准备与他家吃货一同分享,结果却发现被人偷吃了..EATER发现总数少了一个,所以你的任务就 ...

  9. EasyUI 关于IE使用window组件上传文件

    有时候IE会对使用window组件上传文件(第二次)不生效,解决方案是: 将该window每次打开的时候,使用: $('#adUploadWindow').window('refresh', 'pan ...

  10. mysql查看'datadir'目录

    mysql查看创建的数据库的数据,包含表等存放的目录,可以输入下面指令查看: show variables like 'datadir'