zoukankan      html  css  js  c++  java
  • D. 代码填空:LIS

    LIS是最长上升子序列。什么是最长上升子序列? 就是给你一个序列,请你在其中求出一段最长严格上升的部分,它不一定要连续。

    就像这样:22334477 和 22334466 就是序列 22 55 33 44 11 77 66 的两个上升子序列,最长的长度是 44

    LIS模板题,再写一遍加深印象

     

    #include<iostream>
    #include<cstring>
    
    using namespace std;
    
    int f[10000], b[10000];
    
    int lis(int n)
    {
        memset(f, 0, sizeof(f));
        
        int res = 0;
        
        for(int i = 0; i < n; i++)
        {
            for(int j = 0; j < i; j++)
            {
                if(b[j] < b[i])
                {
                    f[i] = max(f[i], f[j] + 1);
                }
            }
            res = max(res, f[i]);
        }
        
        return res + 1;
    }
    
    int main()
    {
        int n; 
        scanf("%d", &n);
        
        for(int i = 0; i < n; i++)
        {
            scanf("%d", b + i);
        }
        
        printf("%d
    ", lis(n));
        
        return 0;
    }

    #include<iostream>#include<cstring>
    using namespace std;
    int f[10000], b[10000];
    int lis(int n){    memset(f, 0, sizeof(f));        int res = 0;        for(int i = 0; i < n; i++)    {        for(int j = 0; j < i; j++)        {            if(b[j] < b[i])            {                f[i] = max(f[i], f[j] + 1);            }        }        res = max(res, f[i]);    }        return res + 1;}
    int main(){    int n;     scanf("%d", &n);        for(int i = 0; i < n; i++)    {        scanf("%d", b + i);    }        printf("%d ", lis(n));        return 0;}

    永远渴望,大智若愚(stay hungry, stay foolish)
  • 相关阅读:
    鼠标移开事件(onmouseout)
    IOS iPhone 屏幕尺寸 判断设备屏幕尺寸、分辨率
    iOS 程序图标Logo设置
    关闭iOS虚拟键盘的几种方法
    Xcode5.1离线下载安装及使用iOS5模拟器进行开发调试的方法
    按钮创建
    Mac 截图 快捷键
    UserDefaultes 数据存储使用
    NSUserDefaults 使用方法
    IOS中NSUserDefaults的用法(轻量级本地数据存储)
  • 原文地址:https://www.cnblogs.com/h-hkai/p/8337629.html
Copyright © 2011-2022 走看看